private void btnQueryBuilder_Click(object sender, EventArgs e) { if (_layer == null) { return; } FormQueryBuilder dlg = new FormQueryBuilder(_layer); if (dlg.ShowDialog() == DialogResult.OK) { txtExpression.Text = dlg.whereClause; } }
async static public Task <FormQueryBuilder> CreateAsync(ITableClass tc) { var dlg = new FormQueryBuilder(); dlg._tc = tc; if (dlg._tc == null) { return(dlg); } gView.Framework.Data.QueryFilter filter = new gView.Framework.Data.QueryFilter(); filter.SubFields = "*"; using (ICursor cursor = await dlg._tc.Search(filter)) { if (cursor is IFeatureCursor) { dlg._table = new FeatureTable((IFeatureCursor)cursor, dlg._tc.Fields, dlg._tc); } else if (cursor is IRowCursor) { dlg._table = new RowTable((IRowCursor)cursor, dlg._tc.Fields); } else { return(dlg); } await dlg._table.Fill(2000); } dlg.cmbMethod.SelectedIndex = 0; foreach (IField field in dlg._tc.Fields.ToEnumerable()) { if (field.type == FieldType.binary || field.type == FieldType.Shape) { continue; } dlg.lstFields.Items.Add(Field.WhereClauseFieldName(field.name)); } return(dlg); }
private void toolStripMenuItem1_Click(object sender, EventArgs e) { if (_dsElement is IFeatureLayer && _dsElement is IFeatureSelection) { FormQueryBuilder dlg = new FormQueryBuilder((IFeatureLayer)_dsElement); if (dlg.ShowDialog() == DialogResult.OK) { QueryFilter filter = new QueryFilter(); filter.WhereClause = dlg.whereClause; ((IFeatureSelection)_dsElement).Select(filter, dlg.combinationMethod); ((IFeatureSelection)_dsElement).FireSelectionChangedEvent(); if (_doc != null) { _doc.FocusMap.RefreshMap(DrawPhase.Selection, null); } } } }