[DevExpress]TreeList数据筛选

关键代码:

        public static void Filter(this TreeList tree, FilterCondition fc)

        {

            if (tree != null && fc != null)

            {

                if (!tree.OptionsBehavior.EnableFiltering)

                    tree.OptionsBehavior.EnableFiltering = true;

                tree.FilterConditions.Clear();

                tree.FilterConditions.Add(fc);

            }

        }

测试代码:

        private void Form1_Load(object sender, EventArgs e)

        {

            this.InitData();

            this.treeList1.DataSource = PersonList;

            this.lookUpEdit1.BindWithAutoCompletion(PersonList, "Name", "Name", "输入需要搜索的....");

            this.lookUpEdit1.AddDeleteButton("删除选中数据....");

            this.lookUpEdit1.KeyDown += new KeyEventHandler(lookUpEdit1_KeyDown);

        }

        void lookUpEdit1_KeyDown(object sender, KeyEventArgs e)

        {

            if (e.KeyCode == Keys.Enter)

            {

                Person _curPerson = lookUpEdit1.GetSelectedDataRow() as Person;

FilterCondition _curFc = new FilterCondition(FilterConditionEnum.NotContains, treeList1.Columns["Name"], _curPerson.Name); treeList1.Filter(_curFc);

            }

        }

实现效果:

树所有数据:

image

筛选后的数据:

image

希望有所帮助!微笑

你可能感兴趣的:(DevExpress)