令我惊讶的是,Devexpress LookupEdit保持下拉(显示列表而不是仅显示默认的编辑值[one element])。什么财产搞砸了我?
以下是我设置属性的方法:
lkTest.Properties.DataSource=MyDataSource;
lkTest.Properties.ValueMember = "TypeID" ;
lkTest.Properties.DisplayMember = "pType";
lkTest.EditValue=1;
谢谢
答案 0 :(得分:2)
你没有遗漏任何东西。
这是LookupEdit的默认行为。如果您只想显示“仅显示”成员列表,则必须在lookupEdit中显示该特定列。
要执行此操作,请在查找编辑中创建自定义列,然后它将仅显示您创建的列,如gridview。
首先,你何时使用
LookupEdit
???
如果要显示特定项目的详细信息,则可以使用它。如果您只想使用类似行为的组合框,请使用ComboBoxEdit control
。
检查这些代码片段,当我分配dataSource和EditValue时,默认情况下它不显示给我。
将其添加到gridview。
lookupEdit = new RepositoryItemLookUpEdit();
lookupEdit.DataSource = dtResult;
lookupEdit.ValueMember = "Marks";
lookupEdit.DisplayMember = "Subject";
gridView1.Columns[0].ColumnEdit = lookupEdit;
LookupEdit托管在表单上:
lookUpEdit1.Properties.DataSource = dtResultType;
lookUpEdit1.Properties.ValueMember = "ID";
lookUpEdit1.Properties.DisplayMember = "ResultSubject";
lookUpEdit1.EditValue = 1;
引用这些链接和Search result以了解您犯了什么错误 我喜欢你看这个 - lookupedit editvalue after databinding
LookupEdit dropdown items shown when change position in datasource
答案 1 :(得分:0)
如果您只想在LookupEdit控件中使用一列,请执行以下操作:
lkTest.Properties.DataSource=MyDataSource;
lkTest.Properties.ValueMember = "TypeID" ;
lkTest.Properties.DisplayMember = "pType";
lkTest.EditValue=1;
LookUpColumnInfoCollection colType = lkTest.Columns;
if (colType.VisibleCount == 0)
colType.Add(new LookUpColumnInfo("TypeID", "Type"));
lkTest.BestFitMode = BestFitMode.BestFitResizePopup;
确保您的数据源 MyDataSource 的TypeID等于1
答案 2 :(得分:0)
我遇到了同样的问题,并在手动设置EditValue后调用'ClosePopup()'方法解决了这个问题。