Dynamic DevExpress数据透视网格-使用LookUpEdit存储库项进行编辑

Dynamic DevExpress数据透视网格-使用LookUpEdit存储库项进行编辑,dynamic,devexpress,pivot,editing,repositorylookupedit,Dynamic,Devexpress,Pivot,Editing,Repositorylookupedit,我正在使用数据透视网格将字符串值显示为我的数据区域值。我的第一个问题是,因为数据值是字符串,所以在执行透视时,所有单元格都包含零。但是,通过将列聚合类型从sum更改为max,我修复了这个问题 现在,我的问题来了。我有一个SQL过程,它接受一个类型参数并返回该类型的可能值列表。数据透视网格中的每个“列”都是这些类型之一。我只显示类型的字符串值,但在网格的数据源中有int值(需要传递给proc)以及一个单独的字段。现在,我可以拥有任意数量的列,并且需要能够使用LookUpEdit存储库项编辑单元格。

我正在使用数据透视网格将字符串值显示为我的数据区域值。我的第一个问题是,因为数据值是字符串,所以在执行透视时,所有单元格都包含零。但是,通过将列聚合类型从sum更改为max,我修复了这个问题

现在,我的问题来了。我有一个SQL过程,它接受一个类型参数并返回该类型的可能值列表。数据透视网格中的每个“列”都是这些类型之一。我只显示类型的字符串值,但在网格的数据源中有int值(需要传递给proc)以及一个单独的字段。现在,我可以拥有任意数量的列,并且需要能够使用LookUpEdit存储库项编辑单元格。每个单元格返回的值列表由我正在处理的列决定。因此,我需要动态地为每个单元格创建lookupedits,并将单元格的类型ID作为参数传递,以正确填充下拉列表

我可以做到这一点,但在查找中的ID和网格上的ID之间没有链接。当我下拉时,我可以从查找中选择一个值,但我不知道如何将我选择的值绑定到网格数据源中的特定字段(单元格的值只是切换回我下拉之前的值)。我认为主要的问题是,我在网格的数据区域显示字符串值,而不是数字值。此屏幕的用户需要字符串值来知道他们在做什么,并且需要能够从查找中选择新的字符串值来编辑基础表的int值

我希望这足够清楚。如果您需要更多详细信息,请随时询问

谢谢

您可以使用获取网格数据源的所有ID。订阅事件,更新网格的数据源,并使用以下方法刷新
PivotGridControl

private void pivotGridControl\u EditValueChanged(对象发送方,EditValueChangedEventArgs e)
{
var drillDown=e.CreateDrillDownDataSource();
foreach(数据透视向下钻取数据行向下钻取)
{
var id=行[“您的id列”];
//按id获取数据源实体
var值=e.Editor.EditValue;
//将值设置为数据源实体
}
pivotGridControl.RefreshData();
}