2016-01-13 71 views
0

我是WPF的新手,並試圖找出如何根據列的值更改數據網格行的背景顏色。我見過一些使用數據觸發器的人的例子:在DataTrigger中使用綁定

<DataGrid.RowStyle> 
       <Style TargetType="DataGridRow"> 
        <Style.Triggers> 
         <DataTrigger Binding="{Binding result}" Value="1"> 
          <Setter Property="Background" Value="Red"></Setter> 
         </DataTrigger> 
         <DataTrigger Binding="{Binding result}" Value="0"> 
          <Setter Property="Background" Value="Green"></Setter> 
         </DataTrigger> 
        </Style.Triggers> 
       </Style> 
</DataGrid.RowStyle> 

我弄不明白這個代碼如何工作。
我綁定DataTableDataGrid這樣的:

episodeDataGrid.DataContext = episodeTable.DefaultView; 

我可以觸發DataTrigger基礎上的一列的文字?例如兩行:

數量|結果

4000 | 0

5000 | 1

結果值爲0的4000行將爲綠色,結果值爲1的5000行將爲紅色?

回答

1

DataTable.DefaultView實際上與您的數據表不同。

要麼,設置爲表本身的數據上下文:

episodeDataGrid.DataContext = episodeTable; 

或者調整你的綁定:

<DataTrigger Binding="{Binding Row.result}" Value="1">