WPF DataGrid:如何在 DataGrid 中迭代以获取行和列?
如何像使用 C# 中的 Forms DataGridView 一样迭代 WPF DataGrid 的行和列?
例如,如果您有 Forms DataGridView,您可以执行以下操作:
for(int i = 0; i < formsDataGrid1.Rows.Count; i++)
{
MessageBox.Show(formsDataGrid1.Rows[i].ToString());
for(int j = 0; j < formsDataGrid1.Columns.Count; j++)
MessageBox.Show(formsDataGrid1.Rows[i].Cells[j].ToString());
}
感谢您的帮助!
**编辑:
我想这样做的原因是用户将使用 DataGrid 在 DataGrid 的第二列中输入某些信息。 另外,这个 DataGrid 有多行,我希望能够获取该数据并用它更新数据库。
How can you iterate in the rows and columns of a WPF DataGrid like with a Forms DataGridView in C#?
For example, if you have Forms DataGridView you can do something like this:
for(int i = 0; i < formsDataGrid1.Rows.Count; i++)
{
MessageBox.Show(formsDataGrid1.Rows[i].ToString());
for(int j = 0; j < formsDataGrid1.Columns.Count; j++)
MessageBox.Show(formsDataGrid1.Rows[i].Cells[j].ToString());
}
Thank you for any help!
**Edit:
The reason I want to do this is that the DataGrid will be used by a user to enter certain informations in the second column of the DataGrid. Also, this DataGrid has multiple rows and I want to able to get that data and update a database with it.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
dg 是您的 XAML DataGrid x:Name
dg is your XAML DataGrid x:Name
通常,您不会这样做:您访问底层数据源而不是 DataGrid 本身。 例如,假设数据源是
IEnumerable
:编辑:
您不需要显式访问网格的特定单元格:如果网格绑定到对象列表,则当用户编辑网格中相应的单元格时,对象的属性将自动更新。
带有联系人列表的简单示例:
Typically, you don't do that : you access the underlying data source instead of the DataGrid itself. For instance, assuming the data source is an
IEnumerable<Foo>
:EDIT:
You don't need to access explicitly a specific cell of the grid : if the grid is bound to a list of objects, the object's property will be automatically updated when the user edits the corresponding cell in the grid.
Simple example with a list of contacts :
尝试使用 Grid.Column[x].GetCellContent(Row[y]) 方法
Try to use
Grid.Column[x].GetCellContent(Row[y])
method