我正在通過DataGridView.DataSource
填充DataGridView,其中源是SQL Server數據庫表。數據庫表格具有不同類型的列。雖然表中的大部分數據類型爲INT
或VARCHAR
,但有幾個BIT
和IMAGE
類型的列。更改DataGridView中單元格的值類型/值c#
我遇到的問題與在DataGridView中自動顯示的內容有關。儘管大多數列中的數據被轉換爲Strings
,並且如此顯示,但BIT
和IMAGE
類型列不會。 IMAGE
類型列顯示圖像(這對我來說很好,我希望它可以這樣做),而BIT
類型的列顯示覆選框(我不想要這個,我希望數據顯示爲String
)。
我希望在加載數據後進行一些格式化,並將具有複選框的單元格更改爲具有Strings
的單元格。但是,我似乎沒有找到辦法做到這一點。
我試圖改變通過以下值:(請注意,被稱爲在此之前下面的代碼,cell
以前已過濾的複選框單元格。)
if (Convert.ToBoolean(cell.Value))
{
cell.Value = "Yes";
}
else
{
cell.Value = "No";
}
我也試圖改變如下所示更改其值之前的單元格類型。
String dummyString;
if (Convert.ToBoolean(cell.Value))
{
dummyString = "Yes";
}
else
{
dummyString = "No";
}
cell.ValueType = typeof(String);
cell.Value = dummyString;
不幸的是,這也未能產生我期望的結果。這兩種嘗試都不會對我能看到的DataGridView做任何事情,並且仍然在單元格而不是字符串中顯示CheckBoxes。
我在做什麼錯?
你不能先添加你的列(使用設計器或代碼)並設置'AutgenerateColumns = false'然後設置'theDataSource'? –