下面的類是我處理的是什麼一個例子:如何將值設置爲綁定的DataGridView的單元格的標記?
class Item
{
public int ID {get;set;}
public string Name {get;set;}
public int Quantity {get;set;}
public string Unit {get;set;}
public override string ToString()
{
return string.Format("{0}({1}){2}{3}", Name,Quantity,Environment.NewLine,Unit);
}
}
class Items
{
List<Item> _items;
public DataTable AllItems()
{
var dt = new DataTable();
// Some manipulation to convert the list to a datatable
// ...
return dt;
}
}
class UI
{
public void PopulateDatagridview()
{
//Some code to create the items
// ...
datagridview1.DataSource = items.AllItems();
}
private void datagridview1_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control && e.KeyCode == Keys.C) // Control + c
{
// here I need to copy only the item name
}
}
}
我只需要項目名稱從電網複製,簡單的和「醜陋」的解決方法是將分析單元格文本,然後獲取項目名稱。 但我必須每次更新我的Item.ToString()時更新此代碼。 我的一個解決方案是將項目ID保存在每個單元格中,這樣我就可以輕鬆地從項目對象中檢索項目名稱。 我想將Item ID保存到單元格的Tag屬性,但由於我通過將DataTable綁定到它的DataSource來填充DataGridView,我無法保存它。
有沒有辦法將值保存到綁定的DataGridView的單元格的標記?
如何在DataTable中創建DataGridView不可見的新列? – vasek
它實際上是複製datagridview,id是針對每個單元的 – ehh
對不起,您的Item類表示Cell而不是Row的事實對我來說並不明顯。 – vasek