0
是否可以設置一個或多個行的背景顏色?WPF datagrid問題
是否可以設置一個或多個行的背景顏色?WPF datagrid問題
您可以使用AlternatingRowBackground
屬性來執行每隔一行。你需要做特定的行嗎?只有第1,5和9行?或根據數據不同的背景顏色?
編輯:根據註釋編輯 ..
否則它基於可這樣做數據...
<DataGrid
AlternatingRowBackground="AliceBlue"
ItemsSource="{Binding}"
AutoGenerateColumns="False"
Height="200"
HorizontalAlignment="Left"
Margin="156,58,0,0"
Name="dataGrid1"
VerticalAlignment="Top"
Width="200" LoadingRow="dataGrid1_LoadingRow">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding}" />
</DataGrid.Columns>
</DataGrid>
void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
ObservableCollection<string> list = new ObservableCollection<string>();
list.Add("test1");
list.Add("test2");
list.Add("test3");
list.Add("test4");
list.Add("test5");
dataGrid1.ItemsSource = list;
}
private void dataGrid1_LoadingRow(object sender, DataGridRowEventArgs e)
{
if (e.Row.Item.ToString().Contains("test"))
{
e.Row.Background = Brushes.Red;
}
}
是,不同的背景顏色取決於數據,這可能嗎?怎麼做? – martin 2010-05-17 15:52:16
在我的情況下,有幾列,所以我應該使用:e.Row.Item.ToString()。包含==「xxxx」?但它不起作用。 – martin 2010-05-17 16:14:46
'Contains'是一種方法。所以你的代碼將是...'if(e.Row.Item.ToString()。Contains(「xxx」)).... – 2010-05-17 18:44:56