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

📄 setfilterdlg.cs

📁 用C#开发的录井油气识别专家系统
💻 CS
字号:
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using OWNERGRID;
using System.Data;
namespace OWNERGRID
{
	/// <summary>
	/// SetFilterDlg 的摘要说明。
	/// </summary>
	public class SetFilterDlg : System.Windows.Forms.Form
	{
		/// <summary>
		/// 必需的设计器变量。
		/// </summary>
		/// 

		private DataViewSetting m_dvs;
		private System.ComponentModel.Container components = null;
		private System.Windows.Forms.Button OK;
		private System.Windows.Forms.Button cancel;
		private System.Windows.Forms.ComboBox fieldlist;
		private System.Windows.Forms.Button getfieldbn;
		private System.Windows.Forms.ComboBox valuelist;
		private System.Windows.Forms.Button getvaluebn;
		public System.Windows.Forms.TextBox filterstring;
		

		public SetFilterDlg()
		{
			//
			// Windows 窗体设计器支持所必需的
			//
			InitializeComponent();

			//
			// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
			//
		}

		/// <summary>
		/// 清理所有正在使用的资源。
		/// </summary>
		protected override void Dispose( bool disposing )
		{
			if( disposing )
			{
				if(components != null)
				{
					components.Dispose();
				}
			}
			base.Dispose( disposing );
		}

		#region Windows Form Designer generated code
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{
			this.filterstring = new System.Windows.Forms.TextBox();
			this.OK = new System.Windows.Forms.Button();
			this.cancel = new System.Windows.Forms.Button();
			this.fieldlist = new System.Windows.Forms.ComboBox();
			this.getfieldbn = new System.Windows.Forms.Button();
			this.valuelist = new System.Windows.Forms.ComboBox();
			this.getvaluebn = new System.Windows.Forms.Button();
			this.SuspendLayout();
			// 
			// filterstring
			// 
			this.filterstring.AllowDrop = true;
			this.filterstring.Location = new System.Drawing.Point(8, 56);
			this.filterstring.Multiline = true;
			this.filterstring.Name = "filterstring";
			this.filterstring.Size = new System.Drawing.Size(432, 96);
			this.filterstring.TabIndex = 0;
			this.filterstring.Tag = "filterstring";
			this.filterstring.Text = "textBox1";
			// 
			// OK
			// 
			this.OK.DialogResult = System.Windows.Forms.DialogResult.OK;
			this.OK.Location = new System.Drawing.Point(48, 152);
			this.OK.Name = "OK";
			this.OK.TabIndex = 1;
			this.OK.Text = "OK";
			// 
			// cancel
			// 
			this.cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
			this.cancel.Location = new System.Drawing.Point(208, 152);
			this.cancel.Name = "cancel";
			this.cancel.TabIndex = 2;
			this.cancel.Text = "Cancel";
			// 
			// fieldlist
			// 
			this.fieldlist.Location = new System.Drawing.Point(16, 8);
			this.fieldlist.Name = "fieldlist";
			this.fieldlist.Size = new System.Drawing.Size(121, 20);
			this.fieldlist.TabIndex = 3;
			this.fieldlist.Text = "可选字段";
			this.fieldlist.SelectedIndexChanged += new System.EventHandler(this.fieldlist_SelectedIndexChanged);
			// 
			// getfieldbn
			// 
			this.getfieldbn.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
			this.getfieldbn.Location = new System.Drawing.Point(32, 32);
			this.getfieldbn.Name = "getfieldbn";
			this.getfieldbn.Size = new System.Drawing.Size(72, 16);
			this.getfieldbn.TabIndex = 4;
			this.getfieldbn.Text = "▼";
			this.getfieldbn.Click += new System.EventHandler(this.getfieldbn_Click);
			// 
			// valuelist
			// 
			this.valuelist.Location = new System.Drawing.Point(256, 8);
			this.valuelist.Name = "valuelist";
			this.valuelist.Size = new System.Drawing.Size(121, 20);
			this.valuelist.TabIndex = 5;
			this.valuelist.Text = "字段取值";
			this.valuelist.SelectedIndexChanged += new System.EventHandler(this.valuelist_SelectedIndexChanged);
			// 
			// getvaluebn
			// 
			this.getvaluebn.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
			this.getvaluebn.Location = new System.Drawing.Point(272, 32);
			this.getvaluebn.Name = "getvaluebn";
			this.getvaluebn.Size = new System.Drawing.Size(72, 16);
			this.getvaluebn.TabIndex = 6;
			this.getvaluebn.Text = "▼";
			this.getvaluebn.Click += new System.EventHandler(this.getvaluebn_Click);
			// 
			// SetFilterDlg
			// 
			this.AllowDrop = true;
			this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
			this.CancelButton = this.cancel;
			this.ClientSize = new System.Drawing.Size(448, 181);
			this.ControlBox = false;
			this.Controls.AddRange(new System.Windows.Forms.Control[] {
																		  this.getvaluebn,
																		  this.valuelist,
																		  this.getfieldbn,
																		  this.fieldlist,
																		  this.cancel,
																		  this.OK,
																		  this.filterstring});
			this.MaximizeBox = false;
			this.MinimizeBox = false;
			this.Name = "SetFilterDlg";
			this.Text = "设置过滤条件文本";
			this.Load += new System.EventHandler(this.SetFilterDlg_Load);
			this.ResumeLayout(false);

		}
		#endregion

		private void SetFilterDlg_Load(object sender, System.EventArgs e)
		{
					
			if(dvsSetting==null)
				return;
			if(dvsSetting.Table==null)
				return;
			
			

			foreach(DataColumn col in dvsSetting.Table.Columns)
			{
				fieldlist.Items.Add(col.ColumnName);
             }

			fieldlist.SelectedIndex=0;

			filterstring.Text=dvsSetting.RowFilter;

	
		}

		public  DataViewSetting dvsSetting
		{
			get
			{
				return m_dvs;
			}
			set
			{
				m_dvs=value;
			}

		}

		
		
		
		
		private void getfieldbn_Click(object sender, System.EventArgs e)
		{
			filterstring.SelectedText=fieldlist.SelectedItem.ToString();
		}


		protected override void OnClosed(	EventArgs e)
		{
			base.OnClosed(e);


			if(DialogResult==DialogResult.OK)
			{

				if(dvsSetting==null)
					return;
				if(dvsSetting.Table==null)
					return;
			

				dvsSetting.RowFilter=filterstring.Text;
				dvsSetting.RowStateFilter=DataViewRowState.Added;
				DataRow[] rows=dvsSetting.Table.Select(filterstring.Text);
				dvsSetting.Table.Rows.Clear();
				dvsSetting.Table.Rows.Add(rows);



				




			}

		}

		private void fieldlist_SelectedIndexChanged(object sender, System.EventArgs e)
		{
			valuelist.Items.Clear();
			valuelist.Text="";
			if(dvsSetting.Table.Columns[fieldlist.SelectedItem.ToString()].DataType==typeof(string))
			{

				foreach(DataRow row in dvsSetting.Table.Rows)
				{
					object s=row[fieldlist.SelectedItem.ToString()];
					int i=valuelist.Items.IndexOf(s);
					if(i<0)
						valuelist.Items.Add(s);

				}
			}

			getfieldbn.Enabled=(fieldlist.SelectedIndex>=0);
			
			valuelist.SelectedIndex=valuelist.Items.Count>=1 ? 0: -1;
			
		}

		private void getvaluebn_Click(object sender, System.EventArgs e)
		{
			if(valuelist.SelectedIndex<0)
				return;

			filterstring.SelectedText="\'"+ valuelist.SelectedItem.ToString()+"\'";
		
		}

		private void valuelist_SelectedIndexChanged(object sender, System.EventArgs e)
		{
			getvaluebn.Enabled=(valuelist.SelectedIndex>=0);
		}

		


	}
}

⌨️ 快捷键说明

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