欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#操作DataGridView設(shè)置單元格只讀

 更新時(shí)間:2022年02月26日 17:07:12   作者:.NET開(kāi)發(fā)菜鳥(niǎo)  
這篇文章介紹了C#操作DataGridView設(shè)置單元格只讀的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

一、修改ReadOnly屬性

1、設(shè)置整個(gè)DataGridView只讀:

DataGridView.ReadOnly=true;

此時(shí)用戶的新增行和刪除行操作也被屏蔽了。

2、設(shè)置DataGridView內(nèi)某個(gè)單元格不可編輯,例如:設(shè)置第二行第一列的單元格不可編輯:

this.dgv_PropDemo[0, 1].ReadOnly = true;

3、設(shè)置DataGridVIew的某列整列不可編輯,例如:設(shè)置第二列不可編輯:

this.dgv_PropDemo.Columns[1].ReadOnly = true;

4、設(shè)置DataGridView的某行整行不可編輯,例如:設(shè)置第三行不可編輯:

this.dgv_PropDemo.Rows[2].ReadOnly = true;

二、使用EditMode屬性

EditMode屬性:獲取或設(shè)置一個(gè)值,該值指示如何開(kāi)始編輯單元格,屬性值是DataGridViewEditMode枚舉值之一。

成員名稱說(shuō)明
EditOnEnter當(dāng)單元格接收到焦點(diǎn)時(shí)即可開(kāi)始編輯。在按 Tab 鍵在行中橫向輸入值,或按 Enter 鍵在列中縱向輸入值時(shí),此模式非常有用。
EditOnF2當(dāng)單元格獲得焦點(diǎn)時(shí)按 F2 開(kāi)始編輯。此模式將選擇點(diǎn)放置在單元格內(nèi)容的末尾。
EditOnKeystroke當(dāng)單元格獲得焦點(diǎn)時(shí)按任意字母數(shù)字鍵開(kāi)始編輯。
EditOnKeystrokeOrF2當(dāng)單元格獲得焦點(diǎn)時(shí)按任意字母數(shù)字鍵或 F2 開(kāi)始編輯。 默認(rèn)值
EditProgrammatically僅在調(diào)用 BeginEdit 方法時(shí)開(kāi)始編輯。  

注:除了EditProgrammatically之外,所有DataGridViewEditMode值都允許用戶通過(guò)雙擊單元格來(lái)開(kāi)始編輯該單元格。

當(dāng)DataGridView的EditMode屬性被設(shè)置為EditProgrammatically時(shí),用戶就不能手動(dòng)編輯單元格的內(nèi)容了。但是可以通過(guò)程序,調(diào)用DataGridView.BeginEdit方法,使單元格進(jìn)入編輯模式進(jìn)行編輯。

例如:

this.dgv_PropDemo.BeginEdit(true);

三、根據(jù)條件設(shè)定單元格的不可編輯狀態(tài)

當(dāng)一個(gè)一個(gè)的通過(guò)單元格坐標(biāo)設(shè)定單元格ReadOnly屬性的方法太麻煩的時(shí)候,你可以通過(guò)CellBeginEdit事件來(lái)取消單元格的編輯。

示例:

?private void dgv_PropDemo_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
??????? {
??????????? DataGridView dgv = sender as DataGridView;
??????????? //當(dāng)前單元格的列名稱等于Sex并且當(dāng)前單元格的值等于“男”的時(shí)候取消編輯
??????????? if (dgv.Columns[e.ColumnIndex].Name == "Sex" && dgv[e.ColumnIndex, e.RowIndex].Value.ToString().Trim() == "男")
??????????? {
??????????????? //取消編輯
??????????????? e.Cancel = true;
??????????? }
??????? }

到此這篇關(guān)于C#操作DataGridView設(shè)置單元格只讀的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論