Errore in XAML - TypeConverter per & # 8220; Style & # 8221; non supporta la conversione da una stringa

StackOverflow https://stackoverflow.com/questions/1013266

  •  06-07-2019
  •  | 
  •  

Domanda

Ho una casella di testo che desidero essere filigranata. Nella mia sezione window.resources ho aggiunto lo stile incluso nella sua interezza di seguito.

Quando imposto lo stile nella casella di testo, Blend 3 Beta visualizza il seguente messaggio:

'Il TypeConverter per " Style " non supporta la conversione da una stringa '

Cosa sta succedendo e come posso risolvere questo problema?

<Style x:Key="WaterMarkTextBoxStyle" BasedOn="{StaticResource {x:Type TextBox}}" TargetType="{x:Type TextBox}">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type TextBox}">
                <Grid>
                    <ScrollViewer x:Name="PART_ContentHost" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
                    <TextBlock x:Name="textBlock" Opacity="0.345" Text="Enter Text Here" TextWrapping="Wrap" Visibility="Hidden" />
                </Grid>
                <ControlTemplate.Triggers>
                    <MultiTrigger>
                        <MultiTrigger.Conditions>
                            <Condition Property="IsFocused" Value="False" />
                            <Condition Property="Text" Value="" />
                        </MultiTrigger.Conditions>
                        <Setter Property="Visibility" TargetName="textBlock" Value="Visible" />
                    </MultiTrigger>
                </ControlTemplate.Triggers>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>
È stato utile?

Soluzione

Dovresti scrivere,

<TextBox Style="{StaticResource WaterMarkTextBoxStyle}" />

Supponendo che il tuo Style sia in Risorse .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top