2
我有一個DataGrid的DataTrigger設置,所以當它的值是「UP」時,我希望觸發器只改變'directionColumn'datagridcolumn中的背景。DataGrid的WPF Datatrigger只改變整行
我到目前爲止已更新整行。我也嘗試在setter元素中放置'targetname',但這只是一個錯誤。請幫忙。
XAML:
<DataGrid AutoGenerateColumns="False" ItemsSource="{Binding}" Name="summaryReportDataGridDATE" RowDetailsVisibilityMode="VisibleWhenSelected" Width="330">
<DataGrid.CellStyle>
<Style TargetType="DataGridCell">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=Direction}" Value="UP">
<Setter>
<Setter.Property>Background</Setter.Property>
<Setter.Value>Red</Setter.Value>
<!--<Setter Property="Background" Value="Red" TargetName="directionColumn"/>-->
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</DataGrid.CellStyle>
<DataGrid.Columns>
<!--<DataGridTemplateColumn x:Name="dateColumn" Header="Date" Width="100" CanUserReorder="False" CanUserSort="False" FontFamily="Arial Rounded MT" >
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<DatePicker SelectedDate="{Binding Path=Date, Mode=OneWay}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>-->
<DataGridTextColumn x:Name="dateColumn" Binding="{Binding Path=Date, StringFormat={}{0:dd/MM/yyyy}}" Header="Date" Width="80" CanUserReorder="False" CanUserSort="False" FontFamily="Arial Rounded MT"/>
<DataGridTextColumn x:Name="closeColumn" Binding="{Binding Path=ClosingPrice}" Header="ClosingPrice" Width="80" CanUserReorder="False" CanUserSort="False" FontFamily="Arial Rounded MT" />
<DataGridTextColumn x:Name="directionColumn" Binding="{Binding Path=Direction}" Header="Direction" Width="80" CanUserReorder="False" CanUserSort="False" FontFamily="Arial Rounded MT" />
<DataGridTextColumn x:Name="resultColumn" Binding="{Binding Path=Result}" Header="Result" Width="80" CanUserReorder="False" CanUserSort="False" FontFamily="Arial Rounded MT" />
</DataGrid.Columns>
</DataGrid>
太好了!謝謝。 – Chris 2010-07-24 07:13:04