我想根据所做的计算更改整行的背景颜色。
我在CustomAppearance或CustomDrawCell事件中遇到的问题是它遍历每个单元格并进行计算。我想基本上改变列索引0上的行颜色,因此不必遍历大数据集:
private void pvtGrdCtrlSummaryGrid_CustomDrawCell(object sender, PivotCustomDrawCellEventArgs e)
{
if (e.RowValueType == PivotGridValueType.Value && e.ColumnValueType == PivotGridValueType.GrandTotal && e.ColumnIndex == 0)
{
//Calculations made
//Change the entire row color here
}
}
所以我可以改变每个单独的单元格并且它按预期工作,但滚动时它非常慢并且根本不能平滑滚动。
我在C#WinForms应用程序中使用了pivotgridcontrol。
答案 0 :(得分:1)
在填充数据集而非CustomDrawCell时执行计算。如果不能,那么尝试将计算限制为仅一列。例如:
if (e.Column.Name == bgcDIRECTION.Name)
或者添加默认为null的辅助列,并在CustomDrawCell中将其分配给它...仅当它为null时。如果它不为null,则包含计算值。