Come faccio a creare uno stile all'interno di un UserControl WPF?
-
05-07-2019 - |
Domanda
Voglio impostare lo stile di alcuni controlli sul mio UserControl, ma non riesco a trovare la sintassi corretta:
<UserControl x:Class="HiideSRM.WIDSModule.BiometricStatusIndicator"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
>
<Style TargetType="{x:Type Border}">
<Setter Property="Width" Value="10"/>
</Style>
<StackPanel Orientation="Horizontal" x:Name="Panel">
<Border Height="50" Margin="1"/>
<Border Height="10" Margin="1"/>
<Border Height="10" Margin="1"/>
<Border Height="10" Margin="1"/>
</StackPanel>
</UserControl>
Soluzione
per prima cosa, posiziona i tuoi stili in un tag .Resources, che può essere figlio di praticamente qualsiasi tag di controllo (es. bordo, controllo utente, griglia, ecc.) secondo, puoi specificare lo stile nel tag, ma poiché non hai dichiarato una chiave x: sulla tua risorsa, lo stile verrà applicato a TUTTI i bordi in questo controllo.
<UserControl.Resources>
<Style TargetType="{x:Type Border}">
<Setter Property="Width" Value="10"/>
</Style>
</UserControl.Resources>
nota che la sintassi è diversa per silverlight. anziché TargetType = " {x: Type Border} "
useresti TargetType="Border"
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow