ColumnEdit 数据源修改
应用场景
当从ColumnEdit(如SearchLookUpEdit)中选取一条记录后,ColumnEdit的数据源不再出现这条记录。效果图如下
选择前
选择一条记录后,上一条记录不再显示。
此处是SearchLookUpEdit,所以会有额外的处理,同样适用于LookUpEdit
//不显示下拉按钮和禁止下拉 replaceLueStaff.Buttons.Clear(); replaceLueStaff.ShowDropDown = DevExpress.XtraEditors.Controls.ShowDropDown.Never; replaceLueStaff.Click += new EventHandler(replaceLueStaff_Click); void replaceLueStaff_Click(object sender, EventArgs e) { //获取选中的ColumnEdit SearchLookUpEdit lue = sender as SearchLookUpEdit; //linq实现 not in 筛选 //gvActor.DataSource为当前gridview,m_dtStaffAll为控件数据源 var selectedIds = ((DataView)(gvActor.DataSource)).OfType<DataRowView>().Select(x => x["STAFF_ID"].ToString()); var query = from p in m_dtStaffAll.AsEnumerable() where !(from x in selectedIds select x).Contains(p["STAFF_ID"].ToString()) select p; lue.Properties.DataSource = query.AsDataView(); lue.ShowPopup(); }
作者:SuperRaccoon
出处:http://www.cnblogs.com/Geronimo/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
推崇原创或用自己的语言加以总结。创造干货,收获干货。