示例#1
0
 public void view_CustomNodeFilter(object sender, DevExpress.Xpf.Grid.TreeList.TreeListNodeFilterEventArgs e)
 {
     if (ForceUnfiltered.Contains(e.Node.Content))
     {
         e.Visible = true;
     }
     e.Handled = true;
 }
示例#2
0
 private void CustomNodeFilter(object sender, DevExpress.Xpf.Grid.TreeList.TreeListNodeFilterEventArgs e)
 {
     if (e.Node.Level == 0)
     {
         e.Visible         = false;
         e.Node.IsExpanded = true;
         e.Handled         = true;
     }
 }
示例#3
0
 private void treeListView1_CustomNodeFilter(object sender, DevExpress.Xpf.Grid.TreeList.TreeListNodeFilterEventArgs e)
 {
     if (checkBox1.IsChecked == false)
     {
         return;
     }
     if (e.Node.RowHandle % 2 != 0)
     {
         e.Visible = false;
     }
     e.Handled = true;
 }
示例#4
0
        private void TreeListView_CustomNodeFilter(object sender, DevExpress.Xpf.Grid.TreeList.TreeListNodeFilterEventArgs e)
        {
            #region 方法一
            var view = (TreeListView)sender;
            if (string.IsNullOrEmpty(view.SearchString))
            {
                return;
            }

            if (e.Node.HasChildren)
            {
                SearchControl searchControl  = view.SearchControl;
                string        criteriaString = CriteriaOperator.LegacyToString(searchControl.FilterCriteria).Replace("DxFts_", "");
                var           ee             = new ExpressionEvaluator(TypeDescriptor.GetProperties(typeof(Employee)), criteriaString, false);

                e.Visible = ee.Fit(e.Node.Content) || new TreeListNodeIterator(e.Node).Select(x => x.Content).Any(ee.Fit);
                e.Handled = true;
            }
            #endregion


            #region 方法二(有缺陷)
            //TreeListNode node = e.Node;
            //TreeListNode parentNode = e.Node.ParentNode;
            //if (parentNode == null)
            //{
            //    e.Visible = true;
            //    e.Handled = true;
            //    return;
            //}
            //if (parentNode != null && node.IsExpanded)
            //{
            //    e.Visible = true;
            //    e.Handled = true;
            //}
            #endregion
        }