我正在尝试在 9.1 版的 PivotGridControl 的行标题中进行一些自定义绘图。在 8.2 版中,我可以在自定义绘图事件的 FieldCellViewInfo 属性上使用 CreateDrillDownDataSource。在 9.1 中,此方法不存在。
我在 8.2 中使用的代码如下所示。从 CustomDrawFieldValue 事件处理程序调用。
PropertyInfo propertyInfo = typeof(PivotCustomDrawFieldValueEventArgs).GetProperty("FieldCellViewInfo", BindingFlags.NonPublic | BindingFlags.Instance);
var fieldCellViewInfo = (PivotFieldsAreaCellViewInfo) propertyInfo.GetValue(args, null);
foreach (PivotDrillDownDataRow dataRow in fieldCellViewInfo.CreateDrillDownDataSource())
{
if (pivotGrid.DataViewInfo.ListSource.Count > dataRow.ListSourceRowIndex)
{
yield return (T) pivotGrid.DataViewInfo.ListSource[dataRow.ListSourceRowIndex];
}
}
这最终用于的是每个行标题上的网格上已修改数据的行修改标记。我希望 9.1 能够做到这一点,而无需像 8.2 中那样使用私有 API 调用