0

我正在尝试使用 Windows 窗体数据网格(.NET 1.1)来更新二维数组的元素。使用微软文档,我已经能够让数据网格正确显示数组。

编辑:我遵循的 MS 说明位于http://support.microsoft.com/kb/315786

class myrow {
   private int a, b;
   public int A {get { return a; } set {a = value;}}
   public int B {get { return b; } set {b = value;}}
}

myrow[] myRows = new myrow[5] {
    new myrow(3,2),
    new myrow(2,2),
    new myrow(1,2),
    new myrow(3,3),
    new myrow(3,1),
}

myDataGrid.SetDataBinding(myRows, "");

我还将 DataGrid 的 TableStyle.MappingName 属性设置为"myrow[]".

让我发疯的是我无法更新它。我在表格的一个单元格中输入一个新值,例如“1123”,然后按 Enter 或 Tab,光标移动到下一个单元格,该值变回原始值。

我怎样才能让它接受更新?

4

4 回答 4

0

这不是我的想法,但我认为您需要实现一个在更改网格单元格或单击更新按钮时触发的事件。

于 2009-02-13T02:13:28.493 回答
0

在我的脑海中,我认为您需要...升级到更新版本的 Visual Studio。

于 2009-10-25T20:06:23.143 回答
0

有一种解决方法,如果将数组更改为 ArrayList 或其他集合类,则更新工作。

不是一个真正的答案,因为它仍然没有使用对象数组,并且仍然不适合常规的二维数据数组。

于 2009-02-13T15:07:45.527 回答
0

不幸的是,我无法检查 .NET 1.1,但对于替换 DataGrid 的 .NET 2.0 控件 DataGridView,不需要手动更新数据源。

希望这会以某种方式帮助你。

于 2009-02-13T06:29:17.413 回答