我决定做一个关于稳压器的小项目。我尝试在WPF中将数据从ComboBox插入DataGrid。
创建Invoice类:
public class Invoice
{
public string Number { get; set; }
public string Item { get; set; }
public string Power { get; set; }
public string Quantity { get; set; }
}
我使用一个List来插入信息到DataGrid中。
List<Invoice> ItemCollection = new List<Invoice>()
{
new Invoice() {Number = num, Item = equipment.Text, Power = power.Text, Quantity = quantity.Text}
};
DataGrid.Items.Add(ItemCollection);
但是如果我在DataGrid中打印设备,功率和数量ComboBoxex数据,我会得到错误的结果:
System.Collections.Generic.List`1[VoltageStablizer.EnterParams+Invoice]
1条答案
按热度按时间eyh26e7m1#
DataGrid.Items
中的项目类型是DataGridItem,这意味着您不能直接添加另一个具有不同类型的集合。另一方面,将
IEnumerable
(在本例中为ItemCollection
)赋给DataGrid.ItemsSource
会自动生成DataGrid
的列。当添加新项目到列表中时,您可以将其添加到
ItemCollection
。在容器中为ItemCollection
创建一个属性,以便在代码的不同部分使用。