/// <summary> /// Initialize a QueryBuilderControlProperties with the specified mapMember. Use the current definition query of that mapMember (if it exists) to extend the /// initialization. /// </summary> /// <param name="mapMember">MapMember to initialize the QueryBuilderControlProperties. </param> private void BuildControlProperties(MapMember mapMember) { // find the current definition query for the mapMember string expression = ""; BasicFeatureLayer fLayer = mapMember as BasicFeatureLayer; StandaloneTable table = mapMember as StandaloneTable; if (fLayer != null) { expression = fLayer.DefinitionQuery; } else if (table != null) { expression = table.DefinitionQuery; } // create it var props = new QueryBuilderControlProperties() { MapMember = mapMember, Expression = expression, }; // set the binding properties this.ControlProperties = props; MapMemberName = mapMember?.Name ?? ""; // keep track of the original expression _origExpression = expression; }
public QueryBuilderWindowViewModel(QueryBuilderControlProperties queryBuilderControlProperties) { MapMemberName = queryBuilderControlProperties.MapMember.Name; Expression = queryBuilderControlProperties.Expression; ControlProps = queryBuilderControlProperties; _origExpression = Expression; }
public QueryBuilderWindow(DefinitionFilterItem defItem, QueryBuilderControlProperties queryBuilderControlProperties) { InitializeComponent(); // trap for Expression changes this.QueryBuilderControl.ExpressionChanged += QueryBuilderControl_ExpressionChanged; QueryBuilderWindowVM = new QueryBuilderWindowViewModel(queryBuilderControlProperties); // set the datacontext to our ViewModel this.DataContext = QueryBuilderWindowVM; QueryBuilderWindowVM.ThisQueryBuilderWindow = this; QueryBuilderWindowVM.ThisDefinitionFilterItem = defItem; }
private void CreateDefinitionFilter() { //Get the Selected layer //Create QueryBuilderControlProperties var queryBuilderControlProps = new QueryBuilderControlProperties { MapMember = SelectedMapMember, EditClauseMode = true, AutoValidate = true }; //Show the Query builder Pro Window var querybuilderwindow = new QueryBuilderWindow(new DefinitionFilterItem(SelectedMapMember, null), queryBuilderControlProps); querybuilderwindow.Owner = FrameworkApplication.Current.MainWindow; querybuilderwindow.Closed += (o, e) => { querybuilderwindow = null; }; querybuilderwindow.ShowDialog(); }
public DefinitionFilterItem(MapMember mapMember, DefinitionQuery definitionQuery) { //if (definitionFilter == null) return; _mapMember = mapMember; _queryExpression = definitionQuery?.WhereClause; _expressionName = definitionQuery?.Name; _definitionFilter = definitionQuery; var queryBuilderControlProps = new QueryBuilderControlProperties { Expression = CurrentDefinitionQuery?.WhereClause, EditClauseMode = true, MapMember = ItemMapMember, AutoValidate = true }; ControlProperties = queryBuilderControlProps; _isActiveFilter = IsDefinitionFilterActive(); }
public DefinitionFilterItem(MapMember mapMember, CIMDefinitionFilter definitionFilter) { //if (definitionFilter == null) return; _mapMember = mapMember; _queryExpression = definitionFilter?.DefinitionExpression; _expressionName = definitionFilter?.Name; _definitionFilter = definitionFilter; var queryBuilderControlProps = new QueryBuilderControlProperties { Expression = DefinitionFilter?.DefinitionExpression, EditClauseMode = true, MapMember = ItemMapMember, AutoValidate = true }; ControlProperties = queryBuilderControlProps; _isActiveFilter = IsDefinitionFilterActive(); }