在DataGrid中显示DataRows列表

时间:2017-01-24 08:01:06

标签: c# wpf list datagrid datarow

我正试图在List中显示DataRows DataGrid,如下所示:

List<DataRow> grid = new List<DataRow>();

for (int i = 0; i <= dt.Rows.Count; i++)
{
    grid.Add(dt.Rows[i]);
}
dataGrid1.ItemsSource = grid;

dt是我获取数据的DataTable。 问题是,当我运行代码时,datagrid为空。

这也不起作用:

datagrid1.DataContext = grid;

修改 (XAML)

<DataGrid Name="dataGrid1" />

2 个答案:

答案 0 :(得分:4)

您不需要for i in 1...3 { switch i { case is Int: print(i); break // redundant 'break' case _: () } } // 1 2 3 // ... the same for i in 1...3 { switch i { case is Int: print(i) case _: () } } // 1 2 3 <video crossOrigin="anonymous"> <source src="domain1Url"> ... </source> <track kind="captions" label="English Captions" src="domain2Url" srclang="en" default> </video> 。你可以简单地说:

List

或者:

DataRows

dataGrid1.ItemsSource = dt.DefaultView;

更新:如果您仍然需要dataGrid1.DataContext = dt.DefaultView; <DataGrid Name="dataGrid1" ItemsSource="{Binding}">

List

你也应该改变这个:

DataRows

对此:

dataGrid1.ItemsSource = dt.AsEnumerable()
                          .Where(grid.Contains)
                          .AsDataView();

答案 1 :(得分:0)

请使用foreach循环,它更容易,你不能犯错误。

foreach (var row in dt.Rows)
{
    grid.Add(row);
}