0

我有一种情况,我想从数组列表中填充 DataGridView。每行包含单个数组的值。数组的大小可以因用户交互而动态变化,但列表中的所有数组始终具有相同的大小。

我可以动态调整 DataGridView 实例的列以反映数组的大小,并且我只需在数组索引之后命名列(“1”、“2”等)。但我需要知道如何将实际数据推送到 DataGridView 以便它可以更新其行。

我知道我可以使用 BindingSource 作为数据源(数组列表)和 DataGridView 之间的中介,但我不知道如何设置它来执行必要的映射。

谢谢。

4

1 回答 1

2

假设您有一组这样的数组(可能会有所不同,但您应该明白):

var row1 = new[] { "A", "B", "C" }
var row2 = new[] { "D", "E", "F" }

现在让我们构建一个可绑定对象:

DataTable table = new DataTable();
for (int i = 0; i < row1.Length; i++) { table.Columns.Add(i.ToString(), typeof(string)); }
table.LoadDataRow(row1, true);
table.LoadDataRow(row2, true);

现在让我们绑定网格:

dataGridView.DataSource = table.DefaultView;
于 2012-09-26T17:28:17.270 回答