Tengo un kit de herramientas: DataGrid (de Codeplex).¿Cómo puedo aplicar estilos XAML múltiples a un elemento?
Se está empezando a tener muchos estilos diferentes:
- uno para el encendido y apagado basado en una variable en el modelo de vista
- uno para el estilo visual
- uno para algunos otros factores desencadenantes, etc. .
hacer todas estas deben estar en un gran estilo, es que la única manera de hacerlo? ¿O puedo tener múltiples estilos y adjuntarlos cuando los necesite? ¿Hay alguna manera de hacerlo para que pueda, por ejemplo, estilos de intercambio en el código?
Estilos:
<Style x:Key="CodePlexDataGridSwapper" TargetType="toolkit:DataGrid">
<Style.Triggers>
<DataTrigger Binding="{Binding WhichGrid}" Value="Infragistics">
<Setter Property="toolkit:DataGrid.Visibility" Value="Collapsed"/>
</DataTrigger>
</Style.Triggers>
</Style>
<Style x:Key="ToolkitDataGridLayout" TargetType="toolkit:DataGrid">
<Setter Property="Background" Value="Yellow"/>
</Style>
pseudo-código:
<toolkit:DataGrid
Style="{StaticResource CodePlexDataGridSwapper, ToolkitDataGridLayout}"
ItemsSource="{Binding Customers}"/>
+1 porque ayuda un poco, pero aún no ayuda a aplicar/fusionar más de dos conjuntos de estilos por separado. Desafortunadamente, es bastante probable que a excepción de la semi-herencia basada en simple no hay forma de aplicar 'muchos' de ellos. – quetzalcoatl
la respuesta puede estar aquí: http: //stackoverflow.com/questions/16096/how-to-apply-multiple-styles-in-wpf –