您可以AutoGenerateColumns
屬性值設置爲false
,這將防止從數據源生成列使用DataGrid和DataTemplate中。然後添加你想要的列DataGridView
,然後設置列到你的數據源中的列名的DataPropertyName
屬性(例如,如果DataTable
對象 - 設置DataTable
列名[要顯示])例如:
dataGridView1.AutoGenerateColumns = false;
dataGridView1.Columns.Add("Col1", "Column1");
dataGridView1.Columns.Add("Col2", "Column2");
dataGridView1.Columns.Add("Col3", "Column2");
. . .
dataGridView1.Columns["Col1"].DataPropertyName = "Col1NameFromSource";
dataGridView1.Columns["Col2"].DataPropertyName = "Col2NameFromSource";
dataGridView1.Columns["Col3"].DataPropertyName = "Col3NameFromSource";
. . .
然後,只需綁定的源DataGridview
的DataSource
DataTable table = /*Your "LINQ-to-SQL" query;*/
dataGridView1.DataSource = table;
假設,你table
包含Col1NameFromSource
,Col2NameFromSource
,Col3NameFromSource
。
來源
2017-09-14 13:06:18
SeM
修改您的選擇查詢(命令文本)。如果要更改列名稱,請使用「列1作爲ABC」。而不是使用*引用你想要的列名。星號正在引入所有列。 – jdweng
這是我正在使用的LINQ查詢。 「as」不是有效的LINQ查詢關鍵字。 –
那麼您可以更改爲使用SQL查詢並使用DataAdapter將結果放入DataTable中。 Linq始終是最好的解決方案。 – jdweng