C# WPF数据网格问题

C# WPF数据网格问题,c#,datagrid,C#,Datagrid,可以设置一行或多行的背景色吗?您可以使用AlternatingRowBackground属性每隔一行设置一行。您需要执行特定的行吗?只喜欢第1行、第5行和第9行?或者根据数据使用不同的背景色 编辑:按评论编辑 以数据为基础做这件事可以这样做 <DataGrid AlternatingRowBackground="AliceBlue" ItemsSource="{Binding}" AutoGenerateColumns="False" Height=

可以设置一行或多行的背景色吗?

您可以使用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;
    }
}

是的,不同的背景颜色取决于数据,可能吗?如何做到这一点?在我的例子中,有几个列,所以我应该使用:e.Row.Item.ToString.Contains==xxxx吗?但是它不起作用。Contains是一个方法。所以你的代码是`如果e.Row.Item.ToString.Containsxxx。。。。