經過測試發現,RowHeadersWidthSizeMode屬性和ColumnHeadersHeightSizeMode屬性,非常影響,DataGridView的顯示性能,DataGridView的數據綁定應該是迭代的,如果你把DataGridViewRowHeadersWidthSizeMode設置了AuToSize類型的屬性,那么每設置一行就要進行一次對HeaderWidth的調整,那么對于N行的表就將進行N!次操作,再加上列的情況,這種性能損失將是巨大的.
如果一定需要控件自動調整寬度,可以先把DataGridViewColumnHeadersHeightSizeMode或DataGridViewRowHeadersWidthSizeMode設置為DisableResizing或EnableResizing,設置了DataSouce屬性后在將他改為AutoSize.
DataGridViewColumnHeadersHeightSizeMode
成員名稱 說明 AutoSize 列標題的高度根據所有列標題單元格的內容進行調整。 DisableResizing 用戶不能使用鼠標調整列標題的高度。 EnableResizing 用戶可以使用鼠標調整列標題的高度。
DataGridViewRowHeadersWidthSizeMode:
成員名稱 說明 AutoSizeToAllHeaders 為適應所有行標頭單元格的內容大小而進行的行標頭寬度調整。 AutoSizeToDisplayedHeaders 為適應當前顯示的行中所有行標頭的內容大小而進行的行標頭寬度調整。 AutoSizeToFirstHeader 為適應第一個行標頭的內容大小而進行的行標頭寬度調整。 DisableResizing 用戶不能使用鼠標調整列標頭的寬度。 EnableResizing 用戶可以使用鼠標調整列標頭的寬度。
|