【问题标题】:How can I set the Selected value on a DevExpress LookupEdit?如何在 DevExpress LookupEdit 上设置 Selected 值?
【发布时间】:2013-09-17 23:14:41
【问题描述】:

我之前问过一个类似的问题,但代码要复杂得多。这个问题涉及一个类似的问题,但是代码被大大简化了。尽管如此,即使这个例子很简单,我也无法通过下拉菜单预先选择正确的值。

我有一个正确填充了值的下拉列表。此外,当我将下拉列表更改为任何值,然后保存我的表单时,数据库记录将更新为正确的值。这很有效,但在表单加载时选择正确的值将不起作用。

我将这些行放在我的保存方法中,只是为了看看我正在处理什么。

var test1 = _myLookupEdit.EditValue;  //evaluates to 2
var test2 = _myLookupEdit.Properties.KeyValue;  //evaluates to 2

但是,当我在表单加载期间设置其中任何一个时,什么都没有发生;下拉列表选择了一个空白条目(展开下拉列表时会看到其余值)。这些方法我都试过了:

_myLookupEdit.EditValue = 2;
_myLookupEdit.Properties.KeyValue = 2;

编辑 - 我在下面的 platon 的回答下发表了评论,但我也会在这里发布。我最终使用存储过程而不是 Enum 来填充此下拉列表。从那时起,下拉菜单加载了正确的选定值。

【问题讨论】:

    标签: devexpress


    【解决方案1】:

    您需要根据编辑器的Properties.ValueMember 字段类型的类型将编辑器的EditValue 属性设置为一个值。我的意思是,如果这是一个字符串字段,EditValue 应该设置为“2”,而不是 2,依此类推。这应该会有所帮助。如果没有,请在设置编辑器的 DataSource 属性后尝试调用编辑器的 Properties.ForceInitialize() 方法。

    【讨论】:

    • 很抱歉报告效果为零,但我非常感谢您的帮助。
    • 我将项目更改为使用存储过程而不是枚举来填充。赏金前往 platon。
    • 实际上 platon 的解决方案确实对我有用(DevExpress 13.2.9)谢谢!
    • 感谢 Platon,解决了我遇到的问题!
    猜你喜欢
    • 2013-11-23
    • 1970-01-01
    • 1970-01-01
    • 2012-03-06
    • 2011-04-06
    • 1970-01-01
    • 2011-01-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多