私は以下に示すようGroupStyle
に aを持っていDataGrid
ます:
<DataGrid x:Name="CompassLogDataGrid"
ItemsSource="{Binding Source={StaticResource Compasscollection}, IsAsync=True, Mode=OneTime}"
Height="auto"
AutoGenerateColumns="False"
Style="{DynamicResource ResourceKey=Log4NetDataGridStyle}">
<DataGrid.GroupStyle>
<GroupStyle ContainerStyle="{StaticResource GroupHeaderStyle}" />
</DataGrid.GroupStyle>
...
</DataGrid>
そしてGroupStyle
:
<Style x:Key="GroupHeaderStyle"
TargetType="{x:Type GroupItem}">
<Setter Property="OverridesDefaultStyle"
Value="False" />
<Setter Property="Margin"
Value="0,0,0,5" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupItem}">
<Expander IsExpanded="False"
Background="#FF112255"
BorderBrush="#FF002255"
Foreground="Black"
BorderThickness="1,1,1,5">
<Expander.Header>
<DockPanel>
<TextBlock FontWeight="Bold"
Foreground="White"
Text="{Binding Path=Name}"
Margin="5,0,0,0"
Width="100" />
<TextBlock FontWeight="Bold"
Foreground="White"
Text="{Binding Path=ItemCount}" />
</DockPanel>
</Expander.Header>
<Expander.Content>
<ItemsPresenter />
</Expander.Content>
</Expander>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
このコードは以下を生成しますError
:
System.Windows.Data エラー: 4 : 参照 'RelativeSource FindAncestor、AncestorType='System.Windows.Controls.DataGrid'、AncestorLevel='1'' でバインディングのソースが見つかりません。BindingExpression:Path=AreRowDetailsFrozen; DataItem=null; ターゲット要素は 'DataGridDetailsPresenter' (Name='') です。ターゲット プロパティは 'SelectiveScrollingOrientation' (タイプ 'SelectiveScrollingOrientation') です System.Windows.Data エラー: 4 : 参照 'RelativeSource FindAncestor、AncestorType='System.Windows.Controls.DataGrid'、AncestorLevel='1'' でバインディングのソースが見つかりません. BindingExpression:Path=HeadersVisibility; DataItem=null; ターゲット要素は 'DataGridRowHeader' (Name='') です。ターゲット プロパティは「Visibility」(タイプ「Visibility」)
どうすればこれを修正できますか?