c# - 更改 WPF 数据网格行颜色

标签 c# wpf datagrid colors row

我有一个 WPF 数据网格,其中填充了一个 ObserverableCollection。

现在我想根据程序启动时的行内容以及运行时是否发生变化来为行着色。

System.Windows.Controls.DataGrid areaDataGrid = ...;
ObservableCollection<Area> areas;
//adding items to areas collection
areaDataGrid.ItemsSource = areas;

areaDataGrid.Rows  <-- Property not available. how to access rows here?

CollectionView myCollectionView = (CollectionView)CollectionViewSource.GetDefaultView(areaDataGrid.Items);
((INotifyCollectionChanged)myCollectionView).CollectionChanged += new NotifyCollectionChangedEventHandler(areaDataGrid_Changed);
...

void areaDataGrid_Changed(object sender, NotifyCollectionChangedEventArgs e)
{
    //how to access changed row here?
}

如何在开始和运行时访问行?

最佳答案

使用 RowStyle .您可以使用 Triggers有条件地更改颜色,或者只是将其绑定(bind)到项目的 Brush 属性并分别更改该属性。

关于c# - 更改 WPF 数据网格行颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10056657/

相关文章:

c# - 在 Windows 中获取 OneDrive 路径

c# - WPF 的 ActiveX VLC 插件不会静音

C# WPF 将 List<T> 与 Datagrid.ItemsSource 进行比较

apache-flex - itemrenderer 功能模型是低效还是只是示例?

c# - 使用 Entity Framework 将 MySql 数据转换为 Microsoft Sql

c# - 如何在不知道何时完成的情况下显示进程的进展

c# - 将 Windows 移至文件夹以便更好地组织,后面的代码现在无法工作

c# - ObservableCollection 即使在 .NET 4.5 中也不是线程安全的?

c# - .net compact framework 不支持异步调用委托(delegate)

asp.net-mvc-3 - 用于 asp.net mvc 的 Telerik 网格的开源替代品?