我创建了类DisplayTable
,如下所述。
我还创建了一个列表,将类的内容添加到列表中。
我将填充的列表推送到DataGrid。但我无法在DataGrid中查看这些内容。请帮助解决这个问题。
public class DisplayTable
{
public int AnalyteId;
public int UnitCode;
public int ReferenceValue;
}
private void btnAddAnalyte_Click(object sender, RoutedEventArgs e)
{
DisplayTable d = new DisplayTable();
List<DisplayTable> list = new List<DisplayTable>();
foreach (CheckBox item in this.AnalyteLitst.Items)
{
if (item.IsChecked == true)
{
d.AnalyteId = 1;
}
}
foreach (CheckBox unit in this.UnitsList.Items)
{
if (unit.IsChecked == true)
{
d.UnitCode = 12;
}
}
list.Add(d);
dataGrid.AutoGenerateColumns = true;
dataGrid.IsReadOnly = false;
dataGrid.RowHeight = 30;
dataGrid.ColumnWidth = 100;
dataGrid.ItemsSource = list;
}
答案 0 :(得分:2)
DataGrid仅为属性自动生成列,因为每列创建绑定,WPF绑定需要属性。 DisplayTable
类声明了字段。
而不是
public int AnalyteId;
请
public int AnalyteId { get; set; }
以相同的方式修复其他数据成员
答案 1 :(得分:-1)
用于绑定,始终使用public properties
。
将DisplayTable.cs更改为
public class DisplayTable
{
public int AnalyteId { get; set; }
public int UnitCode { get; set; }
public int ReferenceValue { get; set; }
}