【问题标题】:c# devexpress xtragrid LocateByValue is not workingc# devexpress xtragrid LocateByValue 不工作
【发布时间】:2017-03-02 04:04:42
【问题描述】:

使用 Devexpress Xtragird 并尝试按 ItemID 列查找行。

GridView activeView = this.DataGridSection.SectionGridControl.MainView as GridView;

第一种方式:

int rowHandle = activeView .LocateByValue("ItemID", 12345);
            if(rowHandle != DevExpress.XtraGrid.GridControl.InvalidRowHandle)
                activeView .FocusedRowHandle = rowHandle;

第二种方式:

        for (int i = 0; i < activeView.DataRowCount; i++)
        {
            DataRow dr = activeView.GetDataRow(i);
            if (Convert.ToInt32(dr["ItemID"]) == SelectedItemIDForEdit)
            {
                activeView.SelectRow(i);
                break;
            };
        }

它们都不起作用。

我错过了什么吗?

谢谢。

【问题讨论】:

  • 您能说出为什么需要从网格中查找行吗?为什么不从绑定的绑定源获取数据
  • 我需要突出显示该行。

标签: c# devexpress xtragrid


【解决方案1】:

LocateByValue 对我很有效。请检查第一个参数是否真的是 FieldName。 可以肯定的是,我使用的是 GridView.LocateByValue(colId.FieldName, value);

【讨论】:

    【解决方案2】:

    在我的例子中 DataController.IsReady 是假的。 确保在加载数据后使用此功能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多