private void OnOnNotifyControl(FilterChangedEventArgs info) { if (info.Action == FilterChangedAction.RebuildWholeTree && info.CurrentNode == null && !_isUpdating) { _isUpdating = true; BeginUpdate(); RootNode = null; var processor = new XpandCriteriaToTreeProcessor(CreateNodesFactory(), new List <CriteriaOperator>()); var criteriaOperator = ((IXpandFilterControl)Control).Criteria(); var node = (Node)processor.ProcessX(criteriaOperator); if (AllowCreateDefaultClause && node == null) { node = CreateCriteriaByDefaultProperty(); } RootNode = node as GroupNode; if (RootNode == null) { RootNode = CreateGroupNode(null); if (node != null) { RootNode.AddNode(node); } } FocusInfo = new FilterControlFocusInfo(RootNode, 0); EndUpdate(FilterChangedAction.RebuildWholeTree); _isUpdating = false; } }
protected override bool CanBeDisplayedByTree(CriteriaOperator criteria) { var criteriaOperators = new List <CriteriaOperator>(); var processor = new XpandCriteriaToTreeProcessor(new FilterControlNodesFactory(Tree.Model), criteriaOperators); processor.ProcessX(criteria); return(!criteriaOperators.Any()); }
protected override bool CanBeDisplayedByTree(CriteriaOperator criteria){ var criteriaOperators = new List<CriteriaOperator>(); var processor = new XpandCriteriaToTreeProcessor(new FilterControlNodesFactory(Tree.Model), criteriaOperators); processor.ProcessX(criteria); return !criteriaOperators.Any(); }
private void OnOnNotifyControl(FilterChangedEventArgs info){ if (info.Action == FilterChangedAction.RebuildWholeTree && info.CurrentNode == null&&!_isUpdating){ var criteriaOperator = ((IXpandFilterControl)Control).Criteria(); if (criteriaOperator!=null){ _isUpdating = true; BeginUpdate(); RootNode = null; var processor = new XpandCriteriaToTreeProcessor(CreateNodesFactory(), new List<CriteriaOperator>()); var node = (Node) processor.ProcessX(criteriaOperator); if (AllowCreateDefaultClause && node == null){ node = CreateCriteriaByDefaultProperty(); } RootNode = node as GroupNode; if (RootNode == null){ RootNode = CreateGroupNode(null); if (node != null){ RootNode.AddNode(node); } } FocusInfo = new FilterControlFocusInfo(RootNode, 0); EndUpdate(FilterChangedAction.RebuildWholeTree); _isUpdating = false; } } }