如果用户在GridView中输入除数字以外的任何字符,如何向用户发出通知



我有一个可编辑的GridView,它绑定到数据库。因此,GridView中每列的数据类型在数据库中都是Int。因此,我的GridView只接受整数。

但是,如果用户在GridView单元格中输入除数字以外的任何其他字符,我想通知用户。

基本上,我需要验证并给出错误消息。

有人能帮我怎么做吗?

我已将Boundfields用于我的GridView

因此,假设我输入了数字以外的任何字符,它会给我一条异常消息,说:System.Data.SqlClient.SqlException:将nvarchar值"a"转换为数据类型int时转换失败。

最好将BoundField转换为TemplateField,并将验证控件添加到EditItemTemplate

<asp:TemplateField HeaderText="Application" SortExpression="APPName">
    <EditItemTemplate>
        <asp:TextBox ID="txtApp" runat="server" Text='<%# Bind("APPName") %>'/>
        <asp:RequiredFieldValidator runat='server' ID='requiredApp' 
            ErrorMessage='Application Name Cannot Be Empty' ControlToValidate='txtApp' /> 
    </EditItemTemplate>
    <ItemTemplate>
        <asp:Label ID="labelApp" runat="server" Text='<%# Bind("APPName") %>'/>
    </ItemTemplate>
</asp:TemplateField>

来源

最新更新