1
DataGrid
에 MahApps
스타일을 사용하고 있습니다. 나는 중심에 있어야하는 기둥이 있습니다. 스타일을 만들 때마다 해당 열과 연결된 셀이 선택되었을 때 다르게 보입니다.WPF DataGrid 센터링 열이 MahApps 스타일을 엉망으로 만듭니다.
다음은 내 DataGrid XAML입니다.
<Style x:Key="DataGridColumnHeaderDataGridCellStyle"
TargetType="{x:Type DataGridCell}"
BasedOn="{StaticResource {x:Type DataGridCell}}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGridCell}">
<Grid Background="{TemplateBinding Background}">
<ContentPresenter HorizontalAlignment="Center" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
그리고 내 셀 그 스타일을 참조 :
<DataGrid ItemsSource="{Binding Path=DiariesForSelectedProject}"
AutoGenerateColumns="False"
HorizontalContentAlignment="Center"
HorizontalAlignment="Stretch">
<DataGrid.Columns>
<DataGridTextColumn Header="Number"
Binding="{Binding Path=Number}"
Width="Auto"
IsReadOnly="True" >
<DataGridTextColumn.CellStyle>
<Style>
<Setter Property="FrameworkElement.HorizontalAlignment"
Value="Center" />
</Style>
</DataGridTextColumn.CellStyle>
</DataGridTextColumn>
<DataGridTextColumn Header="Date"
Binding="{Binding Path=Date, StringFormat=d}"
Width="Auto"
IsReadOnly="True"/>
<DataGridTextColumn Header="Inspector"
Binding="{Binding Path=Inspector}"
Width="Auto"
IsReadOnly="True" />
<DataGridTextColumn Header="Diary Status"
Binding="{Binding Path=Status}"
Width="Auto"
IsReadOnly="True" />
</DataGrid.Columns>
<DataGrid.ItemContainerStyle>
<Style TargetType="DataGridRow">
<Style.Triggers>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding Path=IsOwner}"
Value="True" />
<Condition Binding="{Binding Path=Status}"
Value="Supervisor Returned" />
</MultiDataTrigger.Conditions>
<Setter Property="Foreground"
Value="White" />
<Setter Property="Background"
Value="Red" />
</MultiDataTrigger>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding Path=IsOwner}"
Value="True" />
<Condition Binding="{Binding Path=Status}"
Value="Office Returned" />
</MultiDataTrigger.Conditions>
<Setter Property="Foreground"
Value="White" />
<Setter Property="Background"
Value="Red" />
</MultiDataTrigger>
</Style.Triggers>
</Style>
</DataGrid.ItemContainerStyle>
</DataGrid>
대신 제가 위에서 가지고있는 CellStyle를 사용하여, 나는 또한 다음과 같은 노력했다. 그러나 최종 결과는 두 번 동일합니다. 열은 가운데에 배치되지만 행을 선택하면 DataGrid 셀의 모양이 달라집니다.
사람이 제대로 엉망 MahApps 스타일을 열 중심이 아닌 방법으로 나를 도와 드릴까요?
감사합니다.