如何验证gridview的每列中的控件

时间:2012-12-31 12:15:20

标签: asp.net visual-studio-2010 validation

我想在asp:Gridview中验证列但不确定如何操作,因为我发现的所有教程都在Microsoft Visual Studio上显示了以前的版本(我使用的是2010)。

如何验证Gridview的每一列?

由于

这是由visual studio生成的Gridview的代码。

<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" 
    DataKeyNames="registrationNo" DataSourceID="SqlDataSource3" 
    onselectedindexchanged="GridView2_SelectedIndexChanged">
    <Columns>
        <asp:BoundField DataField="fullName" HeaderText="fullName" 
            SortExpression="fullName" />
        <asp:BoundField DataField="address" HeaderText="address" 
            SortExpression="address" />
        <asp:BoundField DataField="work" HeaderText="work" 
            SortExpression="work" />
        <asp:BoundField DataField="home" HeaderText="home" SortExpression="home" />
        <asp:BoundField DataField="mobile" HeaderText="mobile" 
            SortExpression="mobile" />
        <asp:BoundField DataField="registrationNo" HeaderText="registrationNo" 
            InsertVisible="False" ReadOnly="True" SortExpression="registrationNo" />
        <asp:ButtonField ButtonType="Button" CommandName="Edit" HeaderText="Edit" 
            ShowHeader="True" Text="Edit" />
        <asp:ButtonField ButtonType="Button" CommandName="Update" HeaderText="Update" 
            ShowHeader="True" Text="Update" />
        <asp:ButtonField ButtonType="Button" CommandName="Delete" HeaderText="Delete" 
            ShowHeader="True" Text="Delete" />
    </Columns>
    <HeaderStyle BorderColor="#33CC33" />
    <RowStyle BorderStyle="Double" Font-Names="Monotype Corsiva" />
</asp:GridView>

1 个答案:

答案 0 :(得分:0)

// native asp.net clientside validation(ATLAS Ajax)

您应该使用TemplateField而不是使用BoundFields。这将允许您在字段中添加验证控件,即

Tutorial from 2007 which is still pertinent to this question

//服务器端验证

为了验证服务器端的值,您有几个选择:

a)添加一个指向代码隐藏服务器验证方法的CustomValidator,即msdn doc b)在gridviews上,您可以手动验证RowUpdating方法(这也适用于批量更新)