C# 为什么在repository组合框中选择一个新值,但无法在gridcontrol中获取它?

C# 为什么在repository组合框中选择一个新值,但无法在gridcontrol中获取它?,c#,combobox,repository,devexpress,gridcontrol,C#,Combobox,Repository,Devexpress,Gridcontrol,嗨,我有一个gridcontrol,它包括三列:column1、column2和Column3。列2和列3是存储库comboBox1和存储库Combox2:RepCombox1的数据源为字符串类型list,RepCombox2的数据源为int类型list 我的网格控件还有一个数据源 我希望实现以下功能:当RepCombox1中选择stringA时,RepCombox2中的值将默认为intA 我尝试以下代码: private void repoCombo1_EditValueChanged

嗨,我有一个gridcontrol,它包括三列:column1、column2和Column3。列2和列3是存储库comboBox1和存储库Combox2:RepCombox1的数据源为字符串类型list,RepCombox2的数据源为int类型list

我的网格控件还有一个数据源

我希望实现以下功能:当RepCombox1中选择stringA时,RepCombox2中的值将默认为intA

我尝试以下代码:

    private void repoCombo1_EditValueChanged(object sender, EventArgs e)
    {
        GridView view = gridControl1.FocusedView as GridView;
        string format = gridView1.GetFocusedRowCellValue("field2Name").ToString();
        if (format.Equals(stringA))
        {
            gridView1.SetRowCellValue(gridView1.FocusedRowHandle, view.Columns.ColumnByFieldName("field3Name"), intA);
        }
    }

例如,如果在rowX中RepCombox1中的当前值是stringB,我选择了stringA而不是stringB,我调试代码并找到“string format=gridView1.GetFocusedRowCellValue(“field2Name”).ToString();”将格式设置为“stringB”,而不是我期望的“stringA”。如何在repository组合框中获取新选择的值?为什么它没有改变?非常感谢

为此,应使用以下代码:

object value = (sender as BaseEdit).EditValue;
if(value != null)
  string format = value.ToString();        
  if (format.Equals(stringA))        {            
    gridView1.SetRowCellValue(gridView1.FocusedRowHandle, view.Columns.ColumnByFieldName("field3Name"), intA);        

为此,应使用以下代码:

object value = (sender as BaseEdit).EditValue;
if(value != null)
  string format = value.ToString();        
  if (format.Equals(stringA))        {            
    gridView1.SetRowCellValue(gridView1.FocusedRowHandle, view.Columns.ColumnByFieldName("field3Name"), intA);