⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chaxun.cs

📁 运用ArcEngine9.2结合C#开发的gis系统
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using ESRI.ArcGIS.Carto;
using ESRI.ArcGIS.Geodatabase;

namespace WindowsApplication1
{
    public partial class chaxun : Form
    {
        public IMap pMap;
        public string querySentence;
        public int layerIndex;
        public string layerName;
        public int fieldIndex;
        public string fieldName;
        public ITable pTable;
        private IFeatureLayer pLayer;
        public chaxun()
        {
            InitializeComponent();
        }

        private void comboBox1_Click(object sender, EventArgs e)
        {
            comboBox1.Items.Clear();
            int i, layerCount;
            layerCount = pMap.LayerCount;

            for (i = 0; i < layerCount; i++)
                comboBox1.Items.Add(pMap.get_Layer(i).Name);
        }

        private void comboBox1_SelectionChangeCommitted(object sender, EventArgs e)
        {
            layerIndex = comboBox1.SelectedIndex;
            string text = comboBox1.SelectedText;
            if (layerIndex == -1)
            {
                MessageBox.Show("必须选择一个图层");
                return;
            }

            comboBox2.Enabled = true;

            pLayer = (IFeatureLayer)pMap.get_Layer(layerIndex);
            pTable = (ITable)pLayer;

            int fieldCount,i;
            fieldCount = pTable.Fields.FieldCount;
            comboBox2.Items.Clear();

            for (i = 0; i < fieldCount; i++)
                comboBox2.Items.Add(pTable.Fields.get_Field(i).Name);
        }

        private void comboBox2_SelectionChangeCommitted(object sender, EventArgs e)
        {
            listBox1.Items.Clear();

            listBox1.Enabled = true;

            fieldIndex = comboBox2.SelectedIndex;
            fieldName = pTable.Fields.get_Field(fieldIndex).Name;           
            IQueryFilter pQueryFilter;
            pQueryFilter = new QueryFilterClass();
            pQueryFilter.AddField(fieldName);
            int rowCount;
            double[] fieldValue;
            rowCount = pTable.RowCount(pQueryFilter);
            fieldValue = new double[rowCount];
            for (int i = 0; i < rowCount; i++)
            {
                listBox1.Items.Add(pTable.GetRow(i).get_Value(fieldIndex).ToString());
                if (pTable.GetRow(i).get_Value(fieldIndex) is int)
                    fieldValue[i] = (int)pTable.GetRow(i).get_Value(fieldIndex);
                if (pTable.GetRow(i).get_Value(fieldIndex) is double)
                    fieldValue[i] = (double)pTable.GetRow(i).get_Value(fieldIndex);
            }

            textBox1.Text = comboBox2.SelectedItem.ToString();
        }

        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            textBox1.Text += (string)listBox1.SelectedItem;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            textBox1.Text += "=";
        }

        private void button2_Click(object sender, EventArgs e)
        {
            textBox1.Text += "<>";
        }

        private void button11_Click(object sender, EventArgs e)
        {
            textBox1.Text += "Like";
        }

        private void button4_Click(object sender, EventArgs e)
        {
            textBox1.Text += ">";
        }

        private void button3_Click(object sender, EventArgs e)
        {
            textBox1.Text += ">=";
        }

        private void button12_Click(object sender, EventArgs e)
        {
            textBox1.Text += "And";
        }

        private void button5_Click(object sender, EventArgs e)
        {
            textBox1.Text += "<";
        }

        private void button8_Click(object sender, EventArgs e)
        {
            textBox1.Text += "<=";
        }

        private void button13_Click(object sender, EventArgs e)
        {
            textBox1.Text += "Or";
        }

        private void button6_Click(object sender, EventArgs e)
        {
            textBox1.Text += "%";
        }

        private void button9_Click(object sender, EventArgs e)
        {
            textBox1.Text += "_";
        }

        private void button14_Click(object sender, EventArgs e)
        {
            textBox1.Text += "Not";
        }

        private void button7_Click(object sender, EventArgs e)
        {
            textBox1.Text += "()";
        }

        private void button10_Click(object sender, EventArgs e)
        {
            textBox1.Text += "'";
        }

        private void button15_Click(object sender, EventArgs e)
        {
            textBox1.Text += "Is";
        }

        private void button16_Click(object sender, EventArgs e)
        {
            querySentence = textBox1.Text;
            this.Close();
        
        }

        private void button17_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void chaxun_Load(object sender, EventArgs e)
        {

        }
        

       
        
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -