我想以编程方式以旧式方式向DataGrid添加行。我有一个非常快速的表单,我想与它们中的几个DataGrids一起抛出,我正在尝试向它们添加行。我不想在这种情况下使用MVVM绑定模式,因为我想保持低代码行。
我尝试了这个,但它不适合我:
private static void FillGrid(DataGrid grid, IEnumerable<decimal> values)
{
foreach (var item in values)
{
grid.Items.Add(item);
}
}
数据网格以非常小的行结束,其中没有数据。它看起来像this image。我也尝试在类中包装我的值并将该类的对象添加到DataGrid,但我得到了相同的结果。这是代码:
private class MyClass { public decimal MyDecimal { get; set; } }
private static void FillGrid(DataGrid grid, IEnumerable<decimal> values)
{
foreach (var item in values)
{
grid.Items.Add(new MyClass() { MyDecimal = item });
}
}
我对Windows Forms有更多经验。我发现MVVM绑定繁琐,过于复杂,难以调试。如何使此代码生效?
答案 0 :(得分:0)
您的代码正常运行,但您必须告诉DataGrid
如何处理数据。
<DataGrid>
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding}" />
</DataGrid.Columns>
</DataGrid>
不幸的是,我没有找到没有约束力的简短方法。