编辑xamdatagrid行颜色

时间:2013-07-15 19:42:24

标签: c# .net infragistics xamdatagrid

我知道如何从xamdatagrid更改文本的颜色。我所做的是在xaml文件中定义一个样式,然后添加:igDP:CellValuePresenter
然后在InitializeRecord方法上我得到每条记录并使用:
record.FieldLayout.Fields [“Category”]。Settings.CellValuePresenterStyle = Style
我可以使用哪些C#代码来完成相同但在xaml文件上使用igDP:DataRecordCellArea?

感谢

3 个答案:

答案 0 :(得分:1)

This article非常清楚地解释了如何根据行中的某些条件值更改单元格的背景或前景色。

答案 1 :(得分:0)

你可以处理XamDataGrid的RecordsInViewChanged事件并遍历记录并设置他们的DataRecordCellArea样式或不像这样:

foreach(var item in(sender as XamDataGrid).GetRecordsInView(true)) {

DataRecordCellArea drca = Utilities.GetDescendantFromType(DataRecordPresenter.FromRecord(item), typeof(DataRecordCellArea), true) as DataRecordCellArea;
drca.Style = ....your style

}

此外,我可以建议您在此处发布与Infragistics控件相关的问题:

http://www.infragistics.com/community/forums/

您将从Infragistics专家处获得答案。

答案 2 :(得分:0)

如果要将样式应用于所有记录,更好的方法是在XamDataGrid资源中添加此样式:

<igDP:XamDataGrid >
    <igDP:XamDataGrid.Resources>
    <Style TargetType="{x:Type igDP:DataRecordCellArea}">
        <Setter Property="Foreground" Value="Red"/>
    </Style>
    </igDP:XamDataGrid.Resources>
</igDP:XamDataGrid