当我想在C#&;中应用条件it行时,如何更改GridView中的颜色行;WPF,怎么做?

当我想在C#&;中应用条件it行时,如何更改GridView中的颜色行;WPF,怎么做?,c#,wpf,gridview,C#,Wpf,Gridview,当我想在C#&WPF中应用条件行时,如何更改网格视图中的颜色行,如何执行 (在C#和WPF工作) 注1:列网格视图为:产品ID、产品名称、产品开始日期、产品类型和产品价格 注2:网格视图中的单元索引0为产品ID,网格视图中的单元索引1为产品名称,网格视图中的单元索引2为产品开始日期,网格视图中的单元索引3为产品类型,网格视图中的单元索引4为产品价格 注3:网格视图中的数据类型列产品类型为字符串,值为“销售”值或“购买”值 我的代码: int gridviewrowcount = gridvi

当我想在C#&WPF中应用条件行时,如何更改网格视图中的颜色行,如何执行

(在C#和WPF工作)

注1:列网格视图为:产品ID、产品名称、产品开始日期、产品类型和产品价格

注2:网格视图中的单元索引0为产品ID,网格视图中的单元索引1为产品名称,网格视图中的单元索引2为产品开始日期,网格视图中的单元索引3为产品类型,网格视图中的单元索引4为产品价格

注3:网格视图中的数据类型列产品类型为字符串,值为“销售”值或“购买”值

我的代码:

int   gridviewrowcount = gridview1.items.count;
string  type;
for(int i = 0; i <= gridviewrowcount-1 ; i++)
{
  type = gridview1.columns[3].GetCellContent(gridview1.items[i]) as TextBlock;    
}
int gridviewrowcount=gridview1.items.count;
字符串类型;

对于(inti=0;i在WPF中对GridView进行条件格式设置,需要处理
LoadingRow
事件

下面我展示了一个示例代码,您可以实现这个结果。我假设您正在使用某个模型类的
IEnumerable
填充GridView,我称之为
ProductModel
,其公共属性名为
ProductType

您可以将此代码放在窗体/视图类的构造函数中

//Row Style.
gridview1.LoadingRow += (_sender, _e) =>
    {
        ProdutctModel item = (ProductModel)_e.Row.DataContext;
        if (item != null)
        {
            if (item.ProductType.Equals("Buy"))
                _e.Row.Foreground = new SolidColorBrush(Colors.Red);
            else if (item.ProductType.Equals("Sale"))
                _e.Row.Foreground = new SolidColorBrush(Colors.Green);
        }
    };
正如您所看到的,这很简单,您只需根据产品类型更改
行。前台

查看此处