我有一个 GridView 控件,并且启用了编辑功能。
我的编辑和更新按钮都是 LinkButtons,如下所示:
<asp:LinkButton ID="buttonEdit" runat="server" Text="Edit" CausesValidation="false"
CommandName="Edit" />
<asp:LinkButton ID="buttonUpdate" runat="server" CausesValidation="True"
CommandName="Update" Text="Update" ValidationGroup="Edit" />
当用户单击编辑按钮时,其中一列有一个允许编辑记录的文本框:
<EditItemTemplate>
<asp:TextBox ID="textBoxEdit" runat="server" Text='<%#Eval("Name") %>' />
<asp:Label ID="labelEditWarning" CssClass="error" runat="server" Text="Name already exists" Visible="false" />
</EditItemTemplate>
当用户单击更新链接按钮时,网格的 RowCommand 事件会触发。在这里,我想对数据库中的现有记录进行验证。如果验证失败,那么如何阻止网格的 RowUpdating 事件触发但似乎没有办法做到这一点!?
protected void gridName_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName.Equals("Edit"))
{
//Perform validation & cancel update if the validation fails.
}
}
protected void gridName_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
//Update my record. But I don't want this to fire if my validation fails in
//the row command event.
}
任何人都可以帮忙吗?
我正在使用 ASP.Net 4.0
提前致谢。