-1
DataGrid.GroupStyleを定義したWPF DataGridがあります。WPF DataGrid GroupStyleのエクスパンダーで背景色と前景色を設定するにはどうすればよいですか?
エクスパンダーに含まれるコントロールの背景色と前景(テキスト)色を設定するにはどうすればよいですか?私は背景のために= "ホワイト" フォアグラウンド= "赤" を使用している
<window.resources>
<style x:key="GroupHeaderStyle" targettype="{x:Type GroupItem}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupItem}">
<Expander x:Name="exp" IsExpanded="True"
Background="White"
Foreground="Black">
<Expander x:Name="exp" IsExpanded="True"
Background="Blue"
Foreground="Black">
<Expander.Header>
<TextBlock Text="{Binding Name}" Foreground="Red"/>
</Expander.Header>
<ItemsPresenter />
</Expander>
<ItemsPresenter />
</Expander>
</ControlTemplate>
</Setter.Value>
</Setter>
</style>
</window.resources>
データグリッド
<Custom:DataGrid x:Name="dgData" CanUserAddRows="False" AutoGenerateColumns="False"
CanUserDeleteRows="False" ItemsSource="{Binding}">
<Custom:DataGrid.GroupStyle>
<GroupStyle ContainerStyle="{StaticResource GroupHeaderStyle}">
<GroupStyle.Panel>
<ItemsPanelTemplate>
<Custom:DataGridRowsPresenter/>
</ItemsPanelTemplate>
</GroupStyle.Panel>
</GroupStyle>
</Custom:DataGrid.GroupStyle>
<Custom:DataGrid.Columns>
<Custom:DataGridTextColumn Header="Name" Binding="{Binding Name}"/>
<Custom:DataGridTextColumn Header="Contact" Binding="{Binding Contact}"/>
<Custom:DataGridTextColumn Header="Email ID" Binding="{Binding EmailID}"/>
<Custom:DataGridTextColumn Header="Country" Binding="{Binding Country}"/>
</Custom:DataGrid.Columns>
</Custom:DataGrid>
に定義されたスタイルを使用します。
おかげ
グループ化しています。ポスト関連XAMLとVMコード –