DataGridView常見用法和FAQ彙總
前段時間在專案中用到了WinForm,其中最複雜的控制元件當屬DataGridView了,特別喜歡它那高度的可配置性(提供了大量的屬性,方法和事件)、豐富的內建列型別,而且易於擴充套件,對效能問題也提供了良好的解決方案。
不過最初看著它那數以百計的方法、屬性、事件,感到一陣眩暈,不知如何下手。幸運地是,很快我就找到了一個網站,windowsforms.net,這也是WinForm的官方站點,這裡有不少相關的文章,FAQ,以及不錯的論壇,這個論壇裡,你的問題很可能會是微軟的開發人員為你回答的,那些回答也很到位。
在其中找到了關於DGV的FAQ,更好的是他們提供了DGV的文件和示例。該文件共有六章和一個附錄,詳細的解釋了DGV的結構,內建列/單元格型別,資料操作,主要特性和最佳實踐,最後提供了二十餘個FAQ問題。我就是根據該文件,一步步逐漸瞭解DGV的。實際上,該文件的很多內容來自MSDN,而且限於篇幅,有很多地方也不如MSDN詳細,所以最好是用本文件作綱要,結合MSDN來學習。
也許,對於很多開發人員來說,最有用的是FAQ部分,因為開發過程中,可能沒有很多時間去全面瞭解DGV,而只是需要它的一個特定功能,這時建議先看看FAQ部分有沒有你想要的答案;如果要全面瞭解DGV,建議按照該文件的組織結構,去逐步瞭解它。
現在網上全面介紹DGV的地方好像不太多,尤其是中文開發社群,大都是介紹DGV的某種特性或用法,所以我想把這個文件翻譯一下。翻譯過程中,感覺還是比較困難,雖然自己會時常看一些英文文章,但看懂和表達出來還是有很大不同,導致翻譯進度也比較慢,所以只翻譯了其中的四章和FAQ部分,剩下的兩章有時間再補充吧。
另外,我也嘗試了文件中的絕大部分程式碼,並且用選單項來表示文件的章節結構,這樣在看某一章時,可以很快找到相關的演示程式碼。我把這些也一塊拿出來,大部分都是些很簡單的程式碼,很容易看懂。文件中用到的資料庫是Northwind,在執行程式前,請先將Settings.settings中的連線字串配置正確。
下面是FAQ的主要內容:
2、如何讓一個單元格不可用?
3、如何避免使用者將焦點設定到指定的單元格?
4、如何使所有單元格總是顯示編輯控制元件?
5、如何在單元格內同時顯示圖示和文字?
6、如何隱藏一列?
7、如何避免使用者對列排序?
8、如何針對多個列排序?
9、如何為編輯控制元件新增事件處理函式?
10、應在何時移除編輯控制元件的事件處理函式?
11、如何處理ComboBox列中ComboBox控制元件的SelectIndexChanged事件?
12、如何通過拖放調整行的順序?
13、如何調整最後一列的寬度使其佔據網格的剩餘客戶區?
14、如何讓TextBox型別的單元格支援換行?
15、如何使Image列不顯示任何影像(欄位值為null時)?
16、如何能夠在ComboBox型別的單元格中輸入資料?
17、如何在使用者編輯控制元件的時候(而不是在驗證時)就顯示錯誤圖示?
18、如何同時顯示繫結資料和非繫結資料?
19、如何顯示主從表?
20、如何在同一DataGridView中顯示主從表?
21、如何避免使用者對列排序?
22、如何在點選工具欄按鈕的時候將資料提交到資料庫?
23、如何在使用者刪除記錄時顯示確認對話方塊?
如果在這個網站和MSDN都沒有找到想要的東西,可以去codeproject看看,那裡也有一些關於DGV的文章。
下面是相關下載內容:
微軟的文件和示例以及我翻譯的部分文件和演示程式碼
微軟的文件和示例原始下載
相關文章
- Java Stream常見用法彙總,開發效率大幅提升Java
- Xlua常見API彙總API
- Redis常見問題彙總Redis
- Java 常見問題彙總Java
- Bootstrap常見問題彙總boot
- 常見埠表彙總(轉)
- CTF常見密碼彙總密碼
- Java常見知識點彙總(⑨)——異常Java
- Java常見知識點彙總(⑩)——常見設計模式Java設計模式
- Python常見web框架彙總PythonWeb框架
- 前端常見跨域方案彙總前端跨域
- 代理IP常見問題彙總
- 常見網路協議彙總協議
- Redis Manager 常見問題彙總Redis
- 前端常見設計模式彙總前端設計模式
- SpringMvc常見問題彙總SpringMVC
- JuniperNetScreen常見問題彙總
- Hibernate常見知識彙總
- PostgreSQL常見問題(FAQ)SQL
- 普通raid常見故障解和決方案彙總AI
- Java常見知識點彙總(⑫)——==和equals的區別Java
- Java常見知識點彙總(⑳)——鎖Java
- Java常見知識點彙總(②)——StaticJava
- JavaScript常見面試題彙總(含答案)JavaScript面試題
- mybatis常見庫及問題彙總MyBatis
- Vue專案常見問題彙總Vue
- Java常見面試題及答案彙總Java面試題
- 常見的網路協議彙總協議
- 分散式事務的理解和常見解決方案彙總分散式
- Java常見知識點彙總(⑦)——集合框架Java框架
- Java常見知識點彙總(⑪)——泛型Java泛型
- 【彙總】Python爬蟲常見面試題!Python爬蟲面試題
- 常見堡壘機小知識彙總
- Java程式設計常見問題彙總Java程式設計
- Django常見出錯解決方案彙總Django
- Android Studio 常見問題彙總Android
- 機器學習常見演算法分類彙總機器學習演算法
- 常見的MIME型別彙總(逐步收集)型別