public static void OnClauseClick(this IXpandFilterControl filterControl, object sender, EventArgs e) { var filterControlFocusInfo = filterControl.FocusInfo; var node = (ClauseNode)filterControlFocusInfo.Node; node.Operation = (ClauseType)((DXMenuItem)sender).Tag; filterControl.RefreshTreeAfterNodeChange(); filterControl.RaiseFilterChanged(new FilterChangedEventArgs(FilterChangedAction.OperationChanged, node)); FilterControlFocusInfo fi = filterControlFocusInfo.OnRight(); if (fi.Node == filterControlFocusInfo.Node) { filterControl.FocusInfo = fi; } }
public static void RaisePopupMenuShowingX(this IXpandFilterControl filterControl, PopupMenuShowingEventArgs e) { if (e.MenuType == FilterControlMenuType.Clause && filterControl.ModelMembers != null) { var criteriaOperator = new XpandNodeToCriteriaProcessor().Process(e.CurrentNode); var operandProperty = criteriaOperator.GetOperators().OfType <OperandProperty>().First(); var modelMember = filterControl.ModelMembers.Cast <IModelMemberFullTextContains>().FirstOrDefault(member => member.FullText && member.Name == operandProperty.PropertyName); if (modelMember != null) { var dxMenuItem = new DXMenuItem(ClauseTypeEnumHelper.GetMenuStringByClauseType(ClauseTypeEnumHelper.FullText), filterControl.OnClauseClick) { Tag = ClauseTypeEnumHelper.FullText }; e.Menu.Items.Add(dxMenuItem); } } }
public static WinFilterTreeNodeModel CreateXModel(this IXpandFilterControl filterControl) { var control = (FilterControl)filterControl; return(new XpandFilterTreeNodeModel(control)); }