亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? datagridcombobox.cs

?? 煤礦信息管理系統是基于SuperMap Object
?? CS
字號:
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
using System.Data;
namespace MKIms3
{
	public class DataGridComboBox:ComboBox
	{
		
		public DataGridComboBox()
		{
			
		}
		public DataGridComboBox(DataTable DataSource, string DisplayMember , string ValueMember)
		{
			
		}
		public bool isInEditOrNavigateMode = true;
	}

	public class DataGridComboBoxColumn:DataGridColumnStyle
	{
		
		private int xMargin = 2;
		private int yMargin = 1;
		private DataGridComboBox Combo;
		private string _DisplayMember;
		private string _ValueMember;
		
		

		private string OldVal=new string(string.Empty.ToCharArray());
		private bool InEdit= false;

		
		public DataGridComboBoxColumn(DataTable DataSource, int DisplayMember,int ValueMember)
		{
			Combo = new DataGridComboBox();
			_DisplayMember = DataSource.Columns[DisplayMember].ToString();
			_ValueMember = DataSource.Columns[ValueMember].ToString();
			
			Combo.Visible=false;
			Combo.DataSource = DataSource;
			Combo.DisplayMember = _DisplayMember;
			Combo.ValueMember = _ValueMember;
			Combo.DropDownStyle = ComboBoxStyle.DropDownList;
		}

		
		public DataGridComboBoxColumn(DataTable DataSource,string DisplayMember,string ValueMember)
		{
			Combo = new DataGridComboBox();
			Combo.Visible = false;
			Combo.DataSource = DataSource;
			Combo.DisplayMember = DisplayMember;
			Combo.ValueMember = ValueMember;
			Combo.DropDownStyle = ComboBoxStyle.DropDownList;
		}
		
		protected override void Abort(int RowNum)
		{
			System.Diagnostics.Debug.WriteLine("Abort()");
			RollBack();
			HideComboBox();
			EndEdit();
		}
		
		protected override bool Commit(CurrencyManager DataSource,int RowNum)
		{
			HideComboBox();
			if(!InEdit)
			{
				return true;
			}
			try
			{
				object Value = Combo.SelectedValue;
				if(NullText.Equals(Value))
				{
					Value = System.Convert.DBNull; 
				}
				SetColumnValueAtRow(DataSource, RowNum, Value);
			}
			catch
			{
				RollBack();
				return false;	
			}
			
			this.EndEdit();
			return true;
		}

		
		protected override void ConcedeFocus()
		{
			
			Combo.Visible=false;
		}

		
		protected override void Edit(CurrencyManager Source ,int Rownum,Rectangle Bounds, bool ReadOnly,string InstantText, bool CellIsVisible)
		{
			Combo.Text = string.Empty;
			Rectangle OriginalBounds = Bounds;
			OldVal = Combo.Text;
	
			if(CellIsVisible)
			{
				Bounds.Offset(xMargin, yMargin);
				Bounds.Width -= xMargin * 2;
				Bounds.Height -= yMargin;
				Combo.Bounds = Bounds;
				Combo.Visible = true;
			}
			else
			{
				Combo.Bounds = OriginalBounds;
				Combo.Visible = false;
			}
			
			Combo.SelectedValue = GetText(GetColumnValueAtRow(Source, Rownum));
			
			if(InstantText!=null)
			{
				Combo.SelectedValue = InstantText;
			}
			Combo.RightToLeft = this.DataGridTableStyle.DataGrid.RightToLeft;
		
			
			if(InstantText==null)
			{
				Combo.SelectAll();
				
				
			}
			else
			{
				int End = Combo.Text.Length;
				Combo.Select(End, 0);
			}
			if(Combo.Visible)
			{
				DataGridTableStyle.DataGrid.Invalidate(OriginalBounds);
			}

			InEdit = true;
		}
		protected override int GetMinimumHeight()
		{
			
			return Combo.PreferredHeight + yMargin;
		}

		protected override int GetPreferredHeight(Graphics g ,object Value)
		{
			System.Diagnostics.Debug.WriteLine("GetPreferredHeight()");
			int NewLineIndex  = 0;
			int NewLines = 0;
			string ValueString = this.GetText(Value);
			do
			{
				NewLineIndex = ValueString.IndexOf("r\n", NewLineIndex + 1);
				NewLines += 1;
			}while(NewLineIndex != -1);
			return FontHeight * NewLines + yMargin;
		}
		protected override Size GetPreferredSize(Graphics g, object Value)
		{
			Size Extents = Size.Ceiling(g.MeasureString(GetText(Value), this.DataGridTableStyle.DataGrid.Font));
			Extents.Width += xMargin * 2 + DataGridTableGridLineWidth ;
			Extents.Height += yMargin;
			return Extents;
		}
		protected override void Paint(Graphics g,Rectangle Bounds,CurrencyManager Source,int RowNum)
		{
			Paint(g, Bounds, Source, RowNum, false);
		}
		protected override void Paint(Graphics g,Rectangle Bounds,CurrencyManager Source,int RowNum,bool AlignToRight)
		{
			string Text = GetText(GetColumnValueAtRow(Source, RowNum));
			PaintText(g, Bounds, Text, AlignToRight);
		}
		protected override void Paint(Graphics g,Rectangle Bounds,CurrencyManager Source,int RowNum,Brush BackBrush ,Brush ForeBrush ,bool AlignToRight)
		{
			string Text = GetText(GetColumnValueAtRow(Source, RowNum));
			PaintText(g, Bounds, Text, BackBrush, ForeBrush, AlignToRight);
		}
		protected override void SetDataGridInColumn(DataGrid Value)
		{
			base.SetDataGridInColumn(Value);
			if(Combo.Parent!=Value)
			{
				if(Combo.Parent!=null)
				{
					Combo.Parent.Controls.Remove(Combo);
				}
			}
			if(Value!=null) 
			{
				Value.Controls.Add(Combo);
			}
		}
		protected override void UpdateUI(CurrencyManager Source,int RowNum, string InstantText)
		{
			Combo.Text = GetText(GetColumnValueAtRow(Source, RowNum));
			if(InstantText!=null)
			{
				Combo.Text = InstantText;
			}
		}															 
		
		private int DataGridTableGridLineWidth
		{
			get
			{
				if(this.DataGridTableStyle.GridLineStyle == DataGridLineStyle.Solid) 
				{ 
					return 1;
				}
				else
				{
					return 0;
				}
			}
		}
		public void EndEdit()
		{
			InEdit = false;
			Invalidate();
		}
		private string GetText(object Value)
		{
			if(Value==System.DBNull.Value)
			{
				return NullText;
			}
			if(Value!=null)
			{
				return Value.ToString();
			}
			else
			{
				return string.Empty;
			}
		}
		private void HideComboBox()
		{
			if(Combo.Focused)
			{
				this.DataGridTableStyle.DataGrid.Focus();
			}
			Combo.Visible = false;
		}
		private void RollBack()
		{
			Combo.Text = OldVal;
			
		}
		private void PaintText(Graphics g ,Rectangle Bounds,string Text,bool AlignToRight)
		{
			Brush BackBrush = new SolidBrush(this.DataGridTableStyle.BackColor);
			Brush ForeBrush= new SolidBrush(this.DataGridTableStyle.ForeColor);
			PaintText(g, Bounds, Text, BackBrush, ForeBrush, AlignToRight);
		}
		private void PaintText(Graphics g , Rectangle TextBounds, string Text, Brush BackBrush,Brush ForeBrush,bool AlignToRight)
		{	
			Rectangle Rect = TextBounds;
			RectangleF RectF  = Rect; 
			StringFormat Format = new StringFormat();
			if(AlignToRight)
			{
				Format.FormatFlags = StringFormatFlags.DirectionRightToLeft;
			}
			switch(this.Alignment)
			{
				case HorizontalAlignment.Left:
					Format.Alignment = StringAlignment.Near;
					break;
				case HorizontalAlignment.Right:
					Format.Alignment = StringAlignment.Far;
					break;
				case HorizontalAlignment.Center:
					Format.Alignment = StringAlignment.Center;
					break;
			}
			Format.FormatFlags =Format.FormatFlags;
			Format.FormatFlags =StringFormatFlags.NoWrap;
			g.FillRectangle(BackBrush, Rect);
			Rect.Offset(0, yMargin);
			Rect.Height -= yMargin;
			g.DrawString(Text, this.DataGridTableStyle.DataGrid.Font, ForeBrush, RectF, Format);
			Format.Dispose();
		}
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一卡二卡欧美日韩| 久久久久久久久久久久久久久99| 韩国av一区二区三区在线观看| 综合久久给合久久狠狠狠97色| 欧美电影免费提供在线观看| 欧美性色aⅴ视频一区日韩精品| 成人中文字幕电影| 国产精品1024| 亚洲国产精品人人做人人爽| 国产精品久久久久久久久免费相片 | 国产精品久久三区| 欧美区视频在线观看| 在线亚洲人成电影网站色www| 蜜桃精品视频在线观看| 日本美女视频一区二区| 日韩激情视频在线观看| 天堂av在线一区| 免费在线视频一区| 五月天中文字幕一区二区| 亚洲综合成人在线视频| 亚洲午夜久久久久| 亚洲成av人片在线观看| 五月婷婷久久丁香| 国产美女精品在线| 一本久久a久久精品亚洲| 欧美日韩国产一级| 久久久久久久久久久电影| 亚洲色欲色欲www| 日韩vs国产vs欧美| 国产69精品久久久久毛片| 色婷婷亚洲一区二区三区| 欧美变态口味重另类| 亚洲日本在线看| 韩国精品久久久| 色狠狠av一区二区三区| 久久综合中文字幕| 亚洲午夜精品在线| 波多野结衣在线一区| 欧美老人xxxx18| 国产精品全国免费观看高清| 亚洲大片精品永久免费| 国产1区2区3区精品美女| 91精品久久久久久久91蜜桃| 亚洲国产高清在线| 国产在线一区观看| 正在播放亚洲一区| 一区二区三区精品久久久| 国产一区二区三区最好精华液| 色偷偷久久人人79超碰人人澡| 欧美电影免费提供在线观看| 亚洲午夜av在线| 成人av在线播放网址| 久久综合久久综合久久综合| 一区二区三区精品视频| 暴力调教一区二区三区| 久久你懂得1024| 天天影视网天天综合色在线播放| av电影天堂一区二区在线 | 韩国成人福利片在线播放| 91久久国产最好的精华液| 国产女人18水真多18精品一级做| 美女性感视频久久| 欧美区一区二区三区| 亚洲精品一二三区| 91美女片黄在线观看91美女| 欧美国产成人精品| 高清不卡一二三区| 国产亚洲欧美色| 国产麻豆精品视频| 亚洲精品在线观看视频| 麻豆精品国产传媒mv男同| 日韩亚洲欧美综合| 青娱乐精品在线视频| 日韩欧美一二区| 免费成人av在线播放| 日韩精品自拍偷拍| 激情深爱一区二区| 国产日韩欧美一区二区三区乱码| 国产一区二区主播在线| 日韩免费看网站| 国产精品自产自拍| 国产精品久久久久婷婷| 成人综合婷婷国产精品久久蜜臀| 国产精品三级视频| 99免费精品在线观看| 亚洲女同一区二区| 欧美视频在线一区| 久久激情综合网| 久久众筹精品私拍模特| 成人免费观看视频| 国产精品夫妻自拍| 色婷婷国产精品| 亚洲一二三四在线观看| 69堂亚洲精品首页| 国产福利91精品一区| 亚洲欧美日韩在线不卡| 欧美精品v日韩精品v韩国精品v| 亚洲mv大片欧洲mv大片精品| 日韩欧美亚洲一区二区| 成人免费va视频| 亚洲国产一区二区视频| 日韩欧美国产小视频| 大白屁股一区二区视频| 亚洲午夜久久久久久久久电影院| 日韩你懂的电影在线观看| 成+人+亚洲+综合天堂| 亚洲主播在线播放| 欧美一区二区美女| 高清在线成人网| 婷婷开心激情综合| 中文天堂在线一区| 7777精品伊人久久久大香线蕉的| 国产精品一区一区三区| 亚洲国产精品一区二区www在线| 精品电影一区二区三区| 91色综合久久久久婷婷| 激情成人午夜视频| 亚洲小说春色综合另类电影| 久久精子c满五个校花| 精品视频资源站| 成人性生交大片免费看中文| 亚洲成人av在线电影| 国产精品久久福利| 精品少妇一区二区三区视频免付费 | 久久久久国产精品人| 欧美色大人视频| 91在线视频播放地址| 精品影视av免费| 午夜久久久影院| 国产精品护士白丝一区av| 日韩精品一区二区三区中文精品| 色哟哟国产精品免费观看| 国产在线播放一区三区四| 日韩国产在线一| 亚洲二区在线观看| 亚洲欧美另类小说| 国产精品高潮久久久久无| 国产亚洲女人久久久久毛片| 日韩精品中文字幕在线不卡尤物| 在线免费一区三区| 99视频在线观看一区三区| 福利电影一区二区| 国产精品白丝av| 国产精品一区二区三区乱码| 国产一区激情在线| 国产美女在线观看一区| 久久精品99国产精品日本| 美女一区二区视频| 精品中文av资源站在线观看| 日韩成人免费电影| 蜜桃av一区二区在线观看| 青青草国产精品亚洲专区无| 日韩精品一级中文字幕精品视频免费观看| 亚洲视频每日更新| 亚洲精品国产第一综合99久久 | 欧美日韩亚洲国产综合| 欧美性猛交xxxxxx富婆| 在线观看亚洲一区| 欧美猛男超大videosgay| 欧美精品免费视频| 欧美一级艳片视频免费观看| 欧美一区二区三区日韩| 日韩欧美激情一区| 欧美激情一区二区三区在线| 国产精品激情偷乱一区二区∴| 国产精品女主播av| 亚洲黄色免费网站| 免费一级欧美片在线观看| 国产乱码精品1区2区3区| 国产a精品视频| 日本精品一区二区三区高清 | 国产精品123| 91在线精品一区二区| 91久久香蕉国产日韩欧美9色| 欧美日韩一卡二卡三卡| 精品国产乱码久久久久久图片| 欧美tk丨vk视频| 国产精品久久国产精麻豆99网站| 伊人色综合久久天天人手人婷| 日本不卡1234视频| 成人av电影在线播放| 欧美精品日韩综合在线| 国产欧美日韩三级| 亚洲国产日日夜夜| 久久国产精品72免费观看| 91麻豆国产福利在线观看| 日韩情涩欧美日韩视频| 日韩伦理av电影| 蜜臀av在线播放一区二区三区 | 日韩不卡免费视频| 成人黄色片在线观看| 欧美丰满少妇xxxxx高潮对白| 精品国产乱码久久| 亚洲欧美视频在线观看视频| 久久爱www久久做| 91成人免费网站| 欧美国产视频在线| 日本亚洲电影天堂| 欧美日韩一级片网站| 国产精品视频一二|