首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

devexpress的lookupedit控件能否自由录入文本?解决方案

2012-03-15 
devexpress的lookupedit控件能否自由录入文本?一般情况下,只能从下拉的列表中选择内容,能否不选择内容,而

devexpress的lookupedit控件能否自由录入文本?
一般情况下,只能从下拉的列表中选择内容,能否不选择内容,而是自行输入列表中没有的内容?

已知:lookUpEdit1.Properties.TextEditStyle=TextEditStyles.Standard并不能解决问题,只是可以手工输入内容后在弹出的内容中快速选择而已。

[解决办法]
编辑模式下无法输入下拉中没有的值。

浏览模式下可显示某些下拉中没有的值,前提是这些值必须存在于控件数据源中。

举例如下:
有一个用户表dtUser,内容如下:
Name IsValid
张三 True
李四 False

this.lookUpEdit1.Properties.DisplayMember = "Name";
this.lookUpEdit1.Properties.ValueMember = "Name";
this.lookUpEdit1.Properties.DataSource= dtUser;

现在我希望lookUpEdit1下拉中只有张三,而浏览模式下又可以显示李四。
方法如下:
private void lookUpEdit1_QueryPopUp(object sender, CancelEventArgs e)
{
DataTable dtUser = lookUpEdit1.Properties.DataSource as DataTable;
if(dtUser == null) return;
dtUser.DefaultView.RowFilter = "IsValid='True'";
}

private void lookUpEdit1_QueryCloseUp(object sender, CancelEventArgs e)
{
DataTable dtUser = lookUpEdit1.Properties.DataSource as DataTable;
if(dtUser == null) return;
dtUser.DefaultView.RowFilter = "";
}
[解决办法]
用ComboBoxEdit

热点排行