private void LoadConditionTreeView() { usedColumns.Clear(); this.trvFilterCondition.Nodes.Clear(); TreeNode root = FilterConditionToTreeNode(this.filterCondition); if (root != null) { this.trvFilterCondition.Nodes.Add(root); } this.txtFilterCondition2.Text = GridUtils.FilterConditionToString(filterCondition); }
private TreeNode FilterConditionToTreeNode(GridEXFilterCondition condition) { TreeNode result = null; if (condition != null) { result = new TreeNode(); if (condition.IsComposite) { if (condition.Conditions.Count > 1) { result.Text = condition.Conditions[1].LogicalOperator.ToString(); } else { result.Text = condition.Conditions[0].LogicalOperator.ToString(); } foreach (GridEXFilterCondition childCondition in condition.Conditions) { TreeNode childNode = FilterConditionToTreeNode(childCondition); result.Nodes.Add(childNode); } } else { result.Text = GridUtils.FilterConditionToString(condition); if (!usedColumns.Contains(condition.Column)) { usedColumns.Add(condition.Column); } } result.Tag = condition; result.Expand(); } return(result); }