试试在模板列里面增加几个验证控件,分别验证行内的其他控件
<asp:TemplateColumn HeaderText="验证">
<ItemTemplate>
<asp:Label runat="server"></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:RegularExpressionValidator id="RegularExpressionValidator1" runat="server" ErrorMessage="RegularExpressionValidator"
ControlToValidate="TextBox1" ValidationExpression="\d{2}"></asp:RegularExpressionValidator><asp:RegularExpressionValidator id="RegularExpressionValidator2" runat="server" ErrorMessage="RegularExpressionValidator"
ControlToValidate="TextBox2" ValidationExpression="\d{6}"></asp:RegularExpressionValidator>
...
</EditItemTemplate>
</asp:TemplateColumn>

解决方案 »

  1.   

    在模板列里,放入验证控件就阿以了。例:
    <ItemTemplate>
    <asp:textbox id="tbDiscount" runat="server" style="TEXT-ALIGN: right" cssclass="text" maxlength="4" width="180" Text='<%# DataBinder.Eval(Container, "DataItem.rDiscount") %>'>
    </asp:textbox>折
    <asp:RegularExpressionValidator ID="revDiscount" Runat="server" ControlToValidate="tbDiscount" ErrorMessage="折扣率只能输入0至1之间的一位或两位小数;"
    Display="None" ValidationExpression="(0.\d*)|(0)"></asp:RegularExpressionValidator>
    </ItemTemplate>
    //这里我应用过的。没有问题
      

  2.   

    我的TextBox是动态添加的,怎么总是找不到TextBox的ID,
      

  3.   

    那怎么办,RegularExpressionValidator控件在后台怎么写啊?