2011-10-04 57 views
2

新行我想要做的事很简单,我似乎无法找到EnableClientAddRow属性,所以我可以将它设置为true。我在Web表单上有一个标准的GridView控件。我想要一个按钮出现在Web窗体上。当用户点击按钮时,一个空行会被添加到GridView UI中,这样用户就可以在相应的字段中输入数据。该行当然会在其中一列中有一个“保存”按钮。在ASP.NET GridView控件

我知道这个功能必须在GridView的地方,我只是无法找到它。我确实发现了一些尝试手动实现这一点的奇怪黑客。我对脚注操作或绑定技巧不感兴趣,只是标准的添加行方法。

编辑: 看来GridView控件不支持添加行作为第一顺序操作。这似乎是一个严重的设计缺陷。

回答

1

我通常到基础数据源中添加新记录的“添加记录”按钮点击动作的一部分。然后我重新绑定视图以显示空行。

新的记录是通常一个DataRow如果将GridView绑定到一个DataTable,或者如果在GridView一个对象被绑定到特定类型的集合。不知道这是否是你认为是你的问题的绑定技巧,但它运作良好,并且很容易实现。

编辑 - 更详细的描述过程: 将行添加到数据源,将EditItemIndex设置为新添加的行以使行进入编辑模式,然后将数据源绑定到GridView。您的EditItemTemplate将包含一个取消和一个保存按钮。 Cancel会将GridView重新绑定到基础数据源,而没有空行,并将EditItemIndex设置为-1,从而从GridView中删除该行。

+0

这听起来像它可能工作,但是我觉得更多的细节将是有益的。简单地向数据源添加一个空行来显示带有添加按钮的可编辑行? – izzy

+0

修改了更多的细节,让我知道你是否有任何问题。 –

+0

所以有了这些额外的信息,我发现这是对GridView缺陷更有效的破解。感谢您抽出时间来扩大您的答案,这真的帮了我很大的忙。 – izzy

0

如果添加一个新行到数据源,即使该行已空值,并且您数据绑定数据源到GridView,它应该显示为可编辑的行就像任何其他的行。