1

如何使用 C#.Net Form 应用程序以另一种形式显示 gridview 的选定行?

请用编码回答这个问题。我无法以另一种形式访问第一个表单 gridview。我想将 gridview 值存储在另一个表单文本框中。

4

1 回答 1

0

如果它是您之后的行,那么最简单的方法是让每一行都是一个数据绑定对象。您可以使用任何包含属性的类来执行此操作。

class Foo
{
    public string Column1 { get; set; }
    public float Column2 { get; set; }
    public int Column3 { get; set; }
}

接下来,将 Foo 类型的绑定列表附加到您的 dataGridView。您可能希望自己填充此列表或允许用户使用 dataGridView 填充该列表。

BindingList<Foo> source = new BindingList<Foo>();

// Add items/rows to list if needed...

dataGridView.DataSource = source;

当您想要获取选定的行时,只需使用 dataGridView 的 SelectedRows 属性即可。每行包含一个 DataBoundItem 属性,该属性保存原始绑定列表的数据对象。如何使用它的一个示例是创建一个新的选定对象列表,然后您可以将其传递到您的第二个表单以进行查看或修改。

List<Foo> selected = new List<Foo>();
foreach (DataGridViewRow row in dataGridView1.SelectedRows)
    selected.Add(row.DataBoundItem as Foo);

// Assuming your second form has a property for the list to be passed into.

form2.SelectionList = selected;
于 2013-02-13T07:02:42.437 回答