Winform中使用DevExpress的CheckEdit控件实现多选条件搜索

场景

Winform控件-DevExpress18下载安装注册以及在VS中使用:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100061243

安装完DevExpress后,实现一个可以选择多个条件的搜索功能,效果如下

 

 

实现

新建一个窗体,拖拽checkEdit控件和textEdit控件,使页面布局如下

怎样判断选项被选中

if (ceTaskFile.Checked)

其中ceTaskFile就是checkEdit控件的Name属性。

怎样获取输入框的名字

this.txtTaskFile.Text

其中txtTaskFile就是输入框对应的Name属性

怎样实现并列多选的效果

将要筛选的结果存放在list中,然后依次判断每个选择框是否被勾选,如果被勾选,则将结果按照勾选条件进行筛选。

在下面点击查询的按钮的点击事件中

List<DataTreeNode> data = new List<DataTreeNode>(); //存储要筛选的结果
data = DataTreeListHelper.ParseDir(Common.Global.AppConfig.TestDataDir, data); //获取要查询筛选的结果
if (ceTaskFile.Checked)
            {
               
                if (String.IsNullOrEmpty(this.txtTaskFile.Text))
                {
                    string msg = "请输入任务文件名!";
                    DevExpress.XtraEditors.XtraMessageBox.Show(msg, "标题", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;
                }
                else
                {
                    data = data .Where(p => p.NodeText.ToLower().Contains(this.txtKeyWork.Text.ToLower()));
                }

            }
if (ceKeyWord.Checked)
            {
                if (String.IsNullOrEmpty(this.txtKeyWork.Text))
                {
                    string msg = "请输入关键字!";
                    DevExpress.XtraEditors.XtraMessageBox.Show(msg, "标题", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;
                }
                else
                {
                    data = data .Where(p => p.NodeText.ToLower().Contains(this.txtKeyWork.Text.ToLower()));
                }
            }

 

posted @ 2019-11-26 09:00  霸道流氓  阅读(...)  评论(...编辑  收藏