Ejemplo n.º 1
0
        // User Click the Select Button
        private void BtnSelectClick(object sender, EventArgs e)
        {
            if (_enableUpdate)
            {
                if (((IndexParam)base.Param).Fs == null || ((IndexParam)base.Param).Fs.DataTable == null)
                {
                    return;
                }

                if (((IndexParam)base.Param).Fs.DataTable.Rows.Count < 1)
                {
                    return;
                }

                using (SqlExpressionDialog dlgExpression = new SqlExpressionDialog {
                    Table = ((IndexParam)base.Param).Fs.DataTable
                })
                {
                    if (dlgExpression.ShowDialog() != DialogResult.OK)
                    {
                        return;
                    }

                    _expression   = dlgExpression.Expression;
                    textBox1.Text = _expression;
                    Status        = ToolStatus.Ok;
                    _click        = true;
                    LightTipText  = ModelingMessageStrings.FeaturesSelected;
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Find a feature by query expression.
        /// </summary>
        /// <param name="sender">Sender that raised the event.</param>
        /// <param name="e">The event args.</param>
        private void FindToolClick(object sender, EventArgs e)
        {
            var fl = App.Map.GetFeatureLayers().FirstOrDefault(_ => _.IsSelected);

            if (fl == null)
            {
                MessageBox.Show(Resources.PleaseSelectAFeatureLayer);
                return;
            }

            if (fl.DataSet.Name != _oldFeaturelayer)
            {
                _qdExpression    = string.Empty;
                _oldFeaturelayer = fl.DataSet.Name;
            }

            using (_qd = new SqlExpressionDialog())
            {
                _qd.DialogCulture = ExtensionCulture;

                fl.DataSet.FillAttributes();
                if (fl.DataSet.AttributesPopulated)
                {
                    _qd.Table = fl.DataSet.DataTable;
                }
                else
                {
                    _qd.AttributeSource = fl.DataSet;
                }

                _qd.Expression = _qdExpression;

                // Note: User must click ok button to see anything.
                if (_qd.ShowDialog() == DialogResult.Cancel)
                {
                    _qdExpression = _qd.Expression;
                    return;
                }

                _qdExpression = _qd.Expression;

                if (!string.IsNullOrWhiteSpace(_qd.Expression))
                {
                    try
                    {
                        fl.SelectByAttribute(_qd.Expression);
                    }
                    catch (SyntaxErrorException ex)
                    {
                        MessageBox.Show(string.Format(Resources.IncorrectSyntax, ex.Message));
                    }
                }
            }
        }