【问题标题】:How to get Selected Row Cell Values From RepositoryItemSearchLookUpEdit如何从 RepositoryItemSearchLookUpEdit 获取选定的行单元格值
【发布时间】:2019-06-10 07:45:26
【问题描述】:

我想使用 RepositorySearchLookUpEdit 获取选定的行单元格值,但我不知道如何获取它。

【问题讨论】:

标签: winforms devexpress


【解决方案1】:

如果您需要访问编辑值,请使用SearchLookUpEdit.EditValue 属性。此值对应于 ValueMember 数据源列中包含的值。

如果您希望访问选定行中的任何单元格值,请使用SearchLookUpEdit.Properties.GetRowByKeyValue 方法。您将需要在那里传递当前的编辑值。然后,将此方法返回值转换为您的数据行类型并访问单元格值。

【讨论】:

  • 我试过了,它使用以下代码字符串给了我异常 s = RepositoryFabricId.GetRowByKeyValue(RepositoryFabricId.ValueMember).ToString();
  • RepositoryFabricId.ValueMember 只是一个字符串,用于标识哪个字段包含控件的值成员。您需要将实际值(如标识字段的值)传递给方法,而不是字段的名称。
  • 您需要将编辑值传递给此方法,而不是字段名称。要访问编辑值,请使用 SearchLookUpEdit.EditValue 属性。如果您在像 GridControl 这样的编辑器容器中使用存储库项,则只会为焦点单元格创建单元格编辑器。明确您需要在什么时候访问此值以及在何处使用您的存储库项。
【解决方案2】:

如果您的意思是要从 GridView 上的 LookupEdit 存储库的选定行中读取列,您可以像这样在 RepositoryEdit 的 CloseUp 事件中执行此操作

private void RepositoryFabricId_CloseUp(object sender, DevExpress.XtraEditors.Controls.CloseUpEventArgs e)
{
    if (e.CloseMode == DevExpress.XtraEditors.PopupCloseMode.Normal)
    {
        DataRow row = ((GridLookUpEdit)sender).Properties.View.GetDataRow(((GridLookUpEdit)sender).Properties.View.FocusedRowHandle);
    }
}

此示例适用于 GridLookupEdit 存储库,我想它也适用于 LookupEdit 存储库

【讨论】:

  • @AyeshaSheikh 没问题,很高兴我能帮上忙。如果对您有帮助,还可以考虑接受/支持答案
猜你喜欢
  • 2012-07-27
  • 1970-01-01
  • 1970-01-01
  • 2011-10-23
  • 2018-03-10
  • 2015-12-05
  • 2012-01-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多