私はツールキットを持っています:DataGrid(Codeplexから)。
それは多くの異なるスタイルを持ち始めています:
- ViewModel の変数に基づいてオンとオフを切り替えるためのもの
- 1 つはビジュアル スタイリング用
- 1つは他のトリガーなどです。
これらすべてを1 つの大きなスタイルにする必要がありますか?それが唯一の方法ですか? または、複数のスタイルを用意して、必要に応じて添付することはできますか? コードでスタイルを交換するなど、これを行う方法はありますか?
スタイル:
<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>
疑似コード:
<toolkit:DataGrid
Style="{StaticResource CodePlexDataGridSwapper, ToolkitDataGridLayout}"
ItemsSource="{Binding Customers}"/>