WPF Datagrid读取单元格值
我试图找出如何读取WPF datagrid单元格的值 类似于WPF Datagrid读取单元格值,wpf,datagrid,Wpf,Datagrid,我试图找出如何读取WPF datagrid单元格的值 类似于 String myString = myDataGrid.Cells[1][2].ToString(); datagrid是在XAML中创建的,我使用 reportGrid.Items.Add(new cbResultRow() { ... }); 现在我想返回并读取datagrid中的单元格值 我见过一些从选定行或单元格读取数据的示例,因为我没有任何选择,用户不会与datagrid交互 我也见过类似这样的代码 foreach(D
String myString = myDataGrid.Cells[1][2].ToString();
datagrid是在XAML中创建的,我使用
reportGrid.Items.Add(new cbResultRow() { ... });
现在我想返回并读取datagrid中的单元格值
我见过一些从选定行或单元格读取数据的示例,因为我没有任何选择,用户不会与datagrid交互
我也见过类似这样的代码
foreach(DataGridRow myrow in myDataGrid.Rows)
然而,编译器说行不是datagrid的成员
我已经搜索了几个小时,试图找出如何做我认为是一件非常简单的事情
请帮忙
谢谢,
will.构建WPF数据网格是为了绑定到数据表之类的东西。大多数情况下,您将修改DataTable以及DataTable中绑定到DataGrid的行/列 DataGrid本身是DataTable的可视元素。在一个循环中修改数据看起来是这样的
foreach(DataRow row in myTable.Rows)
{
row["ColumnTitle"] = 1;
}
myTable.Rows[0][0] = 1;
这将使ColumnTitle列中的所有值都等于1。要访问单个单元格,它看起来像这样
foreach(DataRow row in myTable.Rows)
{
row["ColumnTitle"] = 1;
}
myTable.Rows[0][0] = 1;
这会将DataTable中的第一个单元格设置为1。构建WPF datagrid是为了绑定到类似DataTable的东西。大多数情况下,您将修改DataTable以及DataTable中绑定到DataGrid的行/列 DataGrid本身是DataTable的可视元素。在一个循环中修改数据看起来是这样的
foreach(DataRow row in myTable.Rows)
{
row["ColumnTitle"] = 1;
}
myTable.Rows[0][0] = 1;
这将使ColumnTitle列中的所有值都等于1。要访问单个单元格,它看起来像这样
foreach(DataRow row in myTable.Rows)
{
row["ColumnTitle"] = 1;
}
myTable.Rows[0][0] = 1;
这会将数据表中的第一个单元格设置为1。这可能会帮助其他人
foreach (DataRowView row in dgLista.SelectedItems)
{
string text = row.Row.ItemArray[index].ToString();
}
祝你好运 这可能会帮助其他人
foreach (DataRowView row in dgLista.SelectedItems)
{
string text = row.Row.ItemArray[index].ToString();
}
祝你好运 下面是解决方案的摘要 Winform 类型:System.windows.Forms.DataGridView
// C#
foreach (DataGridViewRow row in dataGridView1.Rows)
{
//"Column1" = column name in DataGridView
string text = row.Cells["Column1"].value.ToString();
}
WPF当量
类型:DataGrid
// C#
foreach (DataRowView row in dataGrid.Items)
{
string text = row.Row.ItemArray[index].ToString();
}
下面是解决方案的摘要 Winform 类型:System.windows.Forms.DataGridView
// C#
foreach (DataGridViewRow row in dataGridView1.Rows)
{
//"Column1" = column name in DataGridView
string text = row.Cells["Column1"].value.ToString();
}
WPF当量
类型:DataGrid
// C#
foreach (DataRowView row in dataGrid.Items)
{
string text = row.Row.ItemArray[index].ToString();
}
感谢您的回复,我已经按照您建议的方式创建了一个列表,因为没有datatable并将datagrid绑定到列表,但我真的想知道是否有直接从datagrid访问单元格数据的方法。@dontpanic没有。在将来,您会发现列表与DataTable之间的工作方式不同。我甚至更喜欢ObservableCollection而不是List。感谢您的回复,我已经按照您建议的方式完成了,首先创建了一个List,因为没有datatable并将datagrid绑定到List,但我真的想知道是否有一种方法可以直接从datagrid访问单元格数据。@dontpanic没有。在将来,您会发现列表与DataTable之间的工作方式不同。我甚至更喜欢一个可观察的集合而不是一个列表。好主意。请注意:这只适用于最基本的情况,即您的数据源是DataView,并且您的DataGrid以相同的顺序显示数据源的所有列,即使用1到1的映射。好主意。请注意:这只适用于最基本的情况,即数据源是DataView,DataGrid以相同的顺序显示数据源的所有列,即使用1对1映射。