如何以编程方式获得WPF gridview行值

本文关键字:WPF gridview 行值 方式获 编程 | 更新日期: 2023-09-27 18:02:35

我们有许多具有GridView视图的ListViews绑定到ViewModelCollection<T>。现在我需要从GridView获得显示的值(作为字符串)。似乎我无法访问GridView类的行。

我不知道GridView显示什么类型,所以我也不能使用ListView.ItemCollection。我也不知道GridView的名字,因为代码不在后面的代码中(试图遵循MVVM模式)。我只需要显示的值,这样我就可以将它们导出到Excel表(列顺序也很重要)。

有什么建议吗?

如何以编程方式获得WPF gridview行值

我将使用ViewModelCollection来获取数据。如果您丢失了格式化,只需在字段上应用相同的格式化规则。更好的做法是,使用各自的格式公开ViewModelCollection中的字符串属性,并将网格视图绑定到它们。

通过使用DataRowView,您可以获得每个单元格的值。

DataRowView row = (DataRowView)grid_view.SelectedItems[0];
cmbx_name.Text = row.Row.ItemArray[0].ToString();
lbl_date.Text = row.Row.ItemArray[1].ToString();
txt_location.Text = row.Row.ItemArray[2].ToString();
txt_vehicleno.Text = row.Row.ItemArray[5].ToString();
cmbx_source.Text = row.Row.ItemArray[6].ToString();
orderid = row.Row.ItemArray[7].ToString();
custid = row.Row.ItemArray[8].ToString();