在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

在DataGrid中運用下拉下文框與設置焦點

在DataGrid中運用下拉下文框與設置焦點

更新時間:2022-05-07 文章作者:未知 信息來源:網絡 閱讀次數:

在DataGrid中簡單使用下拉列表框

作者:Tushar Ameta

翻譯:秋楓

在DataGrid中使用下拉列表問題。這篇文章講了如何在 System.Windows.Forms.DataGrid中切入使用ComboBox控件。不過原文不全,無法調試,在這里為了說清楚點,對原文作了一些修改,整篇文章主要包括三方面的內容。

1. 在DataGrid中加入ComboBox列;

2. 把在DataGrid中的修改保存到對應的網格;

3. 設置DataGrid中網格的焦點。



下面是整個源代碼,一些功能可以看注釋。

using System;

using System.Drawing;

using System.Collections;

using System.ComponentModel;

using System.Windows.Forms;

using System.Data;



namespace DataGridTest

{

public class Form1 : System.Windows.Forms.Form

{

private System.Windows.Forms.DataGrid dgdFunctionArea;

private DataTable dtblFunctionalArea;

private System.Windows.Forms.Button buttonFocus;

private System.ComponentModel.Container components = null;



public Form1()

{

InitializeComponent();

PopulateGrid();

}



protected override void Dispose( bool disposing )

{

if( disposing )

{

if (components != null)

{

components.Dispose();

}

}

base.Dispose( disposing );

}



#region Windows 窗體設計器生成的代碼

private void InitializeComponent()

{

this.dgdFunctionArea = new System.Windows.Forms.DataGrid();

this.buttonFocus = new System.Windows.Forms.Button();

((System.ComponentModel.ISupportInitialize)(this.dgdFunctionArea)).BeginInit();

this.SuspendLayout();

//

// dgdFunctionArea

//

this.dgdFunctionArea.DataMember = "";

this.dgdFunctionArea.HeaderForeColor = System.Drawing.SystemColors.ControlText;

this.dgdFunctionArea.Location = new System.Drawing.Point(4, 8);

this.dgdFunctionArea.Name = "dgdFunctionArea";

this.dgdFunctionArea.Size = new System.Drawing.Size(316, 168);

this.dgdFunctionArea.TabIndex = 0;

//

// buttonFocus

//

this.buttonFocus.Location = new System.Drawing.Point(232, 188);

this.buttonFocus.Name = "buttonFocus";

this.buttonFocus.Size = new System.Drawing.Size(84, 23);

this.buttonFocus.TabIndex = 1;

this.buttonFocus.Text = "獲取焦點";

this.buttonFocus.Click += new System.EventHandler(this.buttonFocus_Click);

//

// Form1

//

this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);

this.ClientSize = new System.Drawing.Size(332, 217);

this.Controls.Add(this.buttonFocus);

this.Controls.Add(this.dgdFunctionArea);

this.Name = "Form1";

this.Text = "Form1";

((System.ComponentModel.ISupportInitialize)(this.dgdFunctionArea)).EndInit();

this.ResumeLayout(false);



}

#endregion



/// <summary>

/// 應用程序的主入口點。

/// </summary>

[STAThread]

static void Main()

{

Application.Run(new Form1());

}

//初始化DataGrid

private void PopulateGrid()

{

//創建一個DataTable對象,包括四列,前三列為String,最后一列為Boolean。

dtblFunctionalArea = new DataTable ("FunctionArea");

string[] arrstrFunctionalArea = new string [3]{"Functional Area","Min","Max"};

DataColumn dtCol = null;

//創建String列

for(int i=0; i< 3;i++)

{

dtCol = new DataColumn(arrstrFunctionalArea[i]);

dtCol.DataType = Type.GetType("System.String");

dtCol.DefaultValue = "";

dtblFunctionalArea.Columns.Add(dtCol);

}



//創建Boolean列,用CheckedBox來顯示。

DataColumn dtcCheck = new DataColumn("IsMandatory");

dtcCheck.DataType = System.Type.GetType("System.Boolean");

dtcCheck.DefaultValue = false;

dtblFunctionalArea.Columns.Add(dtcCheck);



//把表綁定到DataGrid

dgdFunctionArea.DataSource = dtblFunctionalArea;



//為DataGrid加載DataGridTableStyle樣式

if(!dgdFunctionArea.TableStyles.Contains("FunctionArea"))

{

DataGridTableStyle dgdtblStyle = new DataGridTableStyle();

dgdtblStyle.MappingName = dtblFunctionalArea.TableName;

dgdFunctionArea.TableStyles.Add(dgdtblStyle);

dgdtblStyle.RowHeadersVisible = false;

dgdtblStyle.HeaderBackColor = Color.LightSteelBlue;

dgdtblStyle.AllowSorting = false;

dgdtblStyle.HeaderBackColor = Color.FromArgb(8,36,107);

dgdtblStyle.RowHeadersVisible = false;

dgdtblStyle.HeaderForeColor = Color.White;

dgdtblStyle.HeaderFont = new System.Drawing.Font("Microsoft Sans Serif", 9F,

System.Drawing.FontStyle.Bold,

System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));

dgdtblStyle.GridLineColor = Color.DarkGray;

dgdtblStyle.PreferredRowHeight = 22;

dgdFunctionArea.BackgroundColor = Color.White;



//設置列的寬度

GridColumnStylesCollection colStyle = dgdFunctionArea.TableStyles[0].GridColumnStyles;

colStyle[0].Width = 100;

colStyle[1].Width = 50;

colStyle[2].Width = 50;

colStyle[3].Width = 80;

}



DataGridTextBoxColumn dgtb = (DataGridTextBoxColumn)dgdFunctionArea.TableStyles[0].GridColumnStyles[0];

ComboBox cmbFunctionArea = new ComboBox();

cmbFunctionArea.Items.AddRange(new object[]{"選項一","選項二","選項三"});

cmbFunctionArea.Cursor = Cursors.Arrow;

cmbFunctionArea.DropDownStyle= ComboBoxStyle.DropDownList;

cmbFunctionArea.Dock = DockStyle.Fill;

//在選定項發生更改并且提交了該更改后發生

cmbFunctionArea.SelectionChangeCommitted += new EventHandler(cmbFunctionArea_SelectionChangeCommitted);

//把ComboBox添加到DataGridTableStyle的第一列

dgtb.TextBox.Controls.Add(cmbFunctionArea);



}

//設置焦點模擬

private void GetFocus(int row,int col)

{

//先把焦點移動到DataGrid

this.dgdFunctionArea.Focus();

//把焦點移動到DataGridCell

DataGridCell dgc = new DataGridCell(row,col);

this.dgdFunctionArea.CurrentCell = dgc;

DataGridTextBoxColumn dgtb = (DataGridTextBoxColumn)dgdFunctionArea.TableStyles[0].GridColumnStyles[col];

//設置焦點

dgtb.TextBox.Focus();



}

//把Combobox上修改的數據提交到當前的網格

private void cmbFunctionArea_SelectionChangeCommitted(object sender, EventArgs e)

{

this.dgdFunctionArea[this.dgdFunctionArea.CurrentCell] = ((ComboBox)sender).SelectedItem.ToString();

}

//設置新的焦點

private void buttonFocus_Click(object sender, System.EventArgs e)

{

//焦點模擬,這里設置第三行第一列

GetFocus(2,0);

}

}

}


下面是測試界面:





總結,這里是通過DataGridTextBoxColumn.TextBox.Controls.Add方法實現在列中添加ComboBox控件;對于數據的保存是使用ComboBox.SelectionChangeCommitted事件來完成;設置焦點是通過DataGridTextBoxColumn.TextBox.Focus方法來實現。另外通過這個方法也可以添加DateTimePicker等類似的控件。


溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美
  • <li id="86scu"><menu id="86scu"></menu></li>
    <li id="86scu"></li>
    <button id="86scu"></button>
  • <s id="86scu"></s><button id="86scu"><menu id="86scu"></menu></button>
  • 精品少妇人妻av一区二区| 异国色恋浪漫潭| 中文字幕成人在线视频| 中文字幕在线中文| 国产视频1区2区3区| 黄色片网址在线观看| 亚洲精品在线视频播放| 国产精品人人妻人人爽人人牛| 亚洲综合在线一区二区| 一本岛在线视频| 国产一区视频免费观看| 国产精品沙发午睡系列| 成人在线观看毛片| 好色先生视频污| 欧美一级免费在线| 污版视频在线观看| 丝袜制服一区二区三区| 日本wwww视频| 日韩精品视频一区二区在线观看| 99久热在线精品视频| 欧美激情第一区| 激情五月婷婷基地| 99九九99九九九99九他书对| 高清一区在线观看| 国产视频一区二区视频| www.色就是色| 亚洲一级片网站| 一级淫片在线观看| 人人妻人人澡人人爽精品欧美一区| 中文字幕天天干| 亚洲日本黄色片| 欧美日韩亚洲国产成人| 91国在线高清视频| 波多野结衣之无限发射| 亚洲精品无码久久久久久| 成人av一级片| 亚洲免费看av| 日韩va在线观看| 国产 国语对白 露脸| www.日本在线视频| 欧美 国产 日本| 无限资源日本好片| 特级西西444| 国产素人在线观看| 又色又爽又高潮免费视频国产| 一道本视频在线观看| 国内精品国产三级国产aⅴ久| 免费观看国产视频在线| 欧美精品自拍视频| 日韩一级免费片| 国产美女作爱全过程免费视频| 2019日韩中文字幕mv| 日韩亚洲在线视频| 欧美爱爱视频网站| 欧美日韩在线中文| 99精品视频国产| 欧美变态另类刺激| 亚洲欧美一区二区三区不卡| 妞干网在线观看视频| 最新天堂中文在线| 成人免费毛片在线观看| 91国内在线播放| 91专区在线观看| 一级黄色在线播放| 久草综合在线观看| 国产一线二线三线女| 五月激情婷婷在线| 国产1区2区在线| 黄色一级片国产| 在线观看免费视频污| 日韩有码免费视频| 久艹视频在线免费观看| 国产系列第一页| 成人日韩在线视频| 男女高潮又爽又黄又无遮挡| 国产在线xxxx| www.午夜色| 黄色小视频免费网站| 国产极品美女高潮无套久久久| 亚洲色婷婷久久精品av蜜桃| 国产无色aaa| 一级黄色特级片| 91最新在线观看| 久久精品香蕉视频| 中文字幕日本最新乱码视频| 日本成人在线不卡| 国产成人免费高清视频| 在线观看免费av网址| 大肉大捧一进一出好爽动态图| 国产 国语对白 露脸| 警花观音坐莲激情销魂小说| 欧美一级免费在线| 日本黄色播放器| 国产一区一区三区| 青青草视频国产| 中文字幕日韩精品无码内射| www国产无套内射com| 97碰在线视频| www..com日韩| 无码人妻精品一区二区三区66| 不要播放器的av网站| 999在线免费视频| 中文字幕 91| 一级黄色高清视频| 一二三在线视频| 成人国产一区二区三区| 日韩a∨精品日韩在线观看| 欧美激情 国产精品| av观看免费在线| www.久久久久久久久久久| 亚洲女人在线观看| 精品国产一区二区三区无码| 国产91在线免费| 欧美 日韩 国产 激情| 福利片一区二区三区| av磁力番号网| 日韩欧美国产免费| 黄色小视频免费网站| 韩国无码av片在线观看网站| 国产h视频在线播放| 欧美成人福利在线观看| 欧美日韩午夜爽爽| 手机看片福利盒子久久| 日韩精品在线播放视频| 国产97在线 | 亚洲| 少妇黄色一级片| 欧美大黑帍在线播放| av丝袜天堂网| 黄黄视频在线观看| 男人天堂成人在线| 男人的天堂avav| 超碰av在线免费观看| 大陆极品少妇内射aaaaaa| 日本成人黄色网| 18禁裸男晨勃露j毛免费观看| 激情网站五月天| 免费观看国产视频在线| 奇米影音第四色| 国产日本在线播放| 91小视频在线播放| 国产精品97在线| 国产欧美久久久久| 一级黄色片国产| 九色porny91| 久色视频在线播放| 99久久免费观看| 久久免费视频2| 亚洲xxx在线观看| 日本xxxxxxx免费视频| 人妻av中文系列| 在线观看18视频网站| 日韩在线一区视频| 国产成人亚洲精品无码h在线| 大荫蒂性生交片| 色乱码一区二区三区熟女| 中文字幕国产免费| 亚洲人成无码www久久久| 日本欧美黄色片| 日本www在线视频| 日韩av综合在线观看| 成人短视频在线观看免费| 手机成人av在线| 亚洲免费视频播放| 在线观看18视频网站| 日韩人妻一区二区三区蜜桃视频| 亚洲精品mv在线观看| 五月天六月丁香| 欧美 另类 交| 日本福利视频在线观看| 欧美狂野激情性xxxx在线观| 久久久久久久9| 国产美女网站在线观看| 欧美视频在线播放一区| 男人操女人免费| 亚洲污视频在线观看| 成年人网站av| 成年丰满熟妇午夜免费视频 | 成人亚洲精品777777大片| 成人中文字幕av| 国产精品一区二区小说| 国产精品v日韩精品v在线观看| 99国产精品久久久久久| 久久久久亚洲av无码专区喷水| 欧美一级爱爱视频| 91九色丨porny丨国产jk| 亚洲熟妇av一区二区三区漫画| 欧美激情国产精品日韩| 蜜桃免费在线视频| 久久出品必属精品| 人人干视频在线| 色乱码一区二区三区在线| 好色先生视频污| 黄色国产精品视频| 午夜大片在线观看| 国产在线视频在线| 欧美一级片中文字幕| 亚洲AV无码成人精品一区| 国产老熟妇精品观看| 亚洲天堂av一区二区| 毛片在线视频播放|