如何在DevExpress LookupEdit上设置所选值?

如何在DevExpress LookupEdit上设置所选值?,devexpress,Devexpress,我以前也问过类似的问题,但代码要复杂得多。这个问题涉及到一个类似的问题,但是代码被大大简化了。尽管如此,即使这个例子很简单,我也无法通过下拉菜单预先选择正确的值 我有一个下拉列表,其中包含正确的值。此外,当我将下拉列表更改为任何值,然后保存表单时,数据库记录将使用正确的值进行更新。这样做是可行的,但在表单加载上选择正确的值将不起作用 我把这些行放在我的save方法中,只是为了看看我在用什么 var test1 = _myLookupEdit.EditValue; //evaluates to

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

我有一个下拉列表,其中包含正确的值。此外,当我将下拉列表更改为任何值,然后保存表单时,数据库记录将使用正确的值进行更新。这样做是可行的,但在表单加载上选择正确的值将不起作用

我把这些行放在我的save方法中,只是为了看看我在用什么

var test1 = _myLookupEdit.EditValue;  //evaluates to 2
var test2 = _myLookupEdit.Properties.KeyValue;  //evaluates to 2
然而,当我在表单加载过程中设置这两个选项时,什么都不会发生;下拉列表中选择了一个空白条目(展开下拉列表时会看到其余的值)。我尝试了以下每种方法:

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

编辑-我在下面柏拉图的答案下发表了一条评论,但我也会在这里发表。我最终使用了一个存储过程来填充这个下拉列表,而不是枚举。从那时起,下拉列表将加载正确的选定值。

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

很抱歉,这没有任何效果,但我非常感谢您的帮助。我将项目更改为使用存储过程而不是枚举填充。悬赏归于柏拉图的努力。事实上,柏拉图的解决方案确实对我有用(DevExpress 13.2.9),谢谢!谢谢柏拉图,修复了我的问题!