DataGridView用法筆記

2021-05-25 05:11:27 字數 2519 閱讀 5080

需要指定新加行的預設值的時候,可以在datagridview.defaultvaluesneeded事件裡處理。在該事件中處理除了可以設定預設值以外,還可以指定某些特定的單元格的readonly屬性等。

//

defaultvaluesneeded 事件處理方法

private

void

datagridview1_defaultvaluesneeded(

object

sender,

datagridviewroweventargs e)

列凍結

datagridviewcolumn.frozen 屬性為 true 時, 該列左側的所有列被固定, 橫向滾動時固定列不隨滾動條滾動而左右移動。這對於重要列固定顯示很有用。

[c#]

// datagridview1的左側2列固定

datagridview1.columns[1].frozen = true;

但是,datagridview.allowusertoordercolumns = true 時,固定列不能移動到非固定列, 反之亦然。

行凍結

datagridviewrow.frozen 屬性為 true 時, 該行上面的所有行被固定, 縱向滾動時固定行不隨滾動條滾動而上下移動。

[c#]

// datagridview1 的上3行固定

datagridview1.rows[2].frozen = true;

設定 datagridview 的 allowusertoordercolumns 為 true 的時候, 使用者可以自由調整列的順序。

當使用者改變列的順序的時候,其本身的 index 不會改變,但是 displayindex 改變了。你也可以通過程式改變 displayindex 來改變列的順序。 列順序發生改變時會引發 columndisplayindexchanged 事件:

[c#]

// datagridview1的columndisplayindexchanged事件處理方法

private void datagridview1_columndisplayindexchanged(object sender,

datagridviewcolumneventargs e)

的位置改變到 ",

e.column.name, e.column.displayindex);

}

[c#]

// 改變datagridview1的第一列列頭內容

datagridview1.columns[0].headercell.value = "第一列";

// 改變datagridview1的第一行行頭內容

datagridview1.rows[0].headercell.value = "第一行";

// 改變datagridview1的左上頭部單元內容

datagridview1.topleftheadercell.value = "左上";

另外你也可以通過 headertext 來改變他們的內容。

[c#]

// 改變datagridview1的第一列列頭內容

datagridview1.columns[0].headertext = "第一列";

要求:驗證錯誤後焦點不離開。

實現:單元格的驗證可以使用dgv_details_cellvalidating事件。

驗證不通過時呼叫e.cancel = true;終止事件鏈,單元格將保持編輯狀態。

呼叫dgv_details.canceledit();可以使單元格的內容會滾到修改前的值。

使用system.windows.forms.sendkeys.send("^a");將全菜單元格的內容。

實現:

color gridreadonlycolor = color.lightgoldenrodyellow;

dgv_details.columns[1].defaultcellstyle.backcolor = ((winkeys.))gridreadonlycolor;

通過cellformatting事件,可以自定義單元格的表示值。(比如:值為error的時候,單元格被設定為紅色)

下面的示例:將「colmn1」列的值改為大寫。

[c#]

//cellformatting 事件處理方法

private

void

datagridview1_cellformatting(

object

sender,

datagridviewcellformattingeventargs e)}

DataGridView用法筆記

需要指定新加行的預設值的時候,可以在datagridview.defaultvaluesneeded事件裡處理。在該事件中處理除了可以設定預設值以外,還可以指定某些特定的單元格的readonly屬性等。defaultvaluesneeded 事件處理方法 private void datagridv...

DataGridView控制項用法合集 一

datagridview控制項用法合集 一 近期將datagridview常用的一些用法做了乙個整理。為防止頁面過長,現分批貼出來,此為第一部分。1.datagridview當前的單元格屬性取得 變更 2.datagridview編輯屬性 3.datagridview最下面一列新追加行非表示 4.d...

DataGridView控制項用法合集 二

7.datagridview行列寬度高度設定為不能編輯 8.datagridview行高列幅自動調整 9.datagridview指定行列凍結 10.datagridview列順序變更可否設定 11.datagridview行複數選擇 12.datagridview選擇的行 列 單元格取得 7.da...