2011-09-20 162 views
7

Im在C#中的Datatable存在問題。我有一個Datatable與列。我想手動設置列的大小,我該怎麼做?C#Datatable列寬

這是代碼:

dt = new DataTable(); 

DataColumn culAvs = new DataColumn("Avskiping", typeof(string)); 
DataColumn culKota = new DataColumn("Kota", typeof(string)); 
dt.Columns.Add(culAvs); 
dt.Columns.Add(culKota); 
dataGrid1.DataSource = dt; 
+1

你不應該使用System.Data.DataTable的DataColumns,也就是數據容器,結果的類型的數據庫查詢。 您應該自定義DataGrid列的大小,這是您用來呈現數據的UI控件。 –

+0

這是什麼意思的大小像文本的長度在這種情況下? – V4Vendetta

+0

http://stackoverflow.com/questions/2175274/dynamically-assign-a-column-width-to-a-winforms-datagrid – Dmitry

回答

2

數據表不包含用戶界面相關的屬性,它是一個數據容器。 您需要在數據網格上定義列可視屬性。

+0

可能的重複我明白了,但我該怎麼做? – Roi84

+0

@ Roi84如果使用ASP.net,則可以通過更改itemstyle屬性來設置數據網格列的寬度:http://msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.datagridcolumn。 itemstyle.aspx –

8

如果您正在討論列中數據的最大長度,您可能會對DataColumn.MaxLength屬性感興趣。但是如果你在談論列的視覺寬度,你應該使用DataGrid列的Width屬性:dataGrid1.Columns[ ... ].Width = ...