Is it possible to add data binding expression for ValidationGroup within ASP.NET GridView in a user control?
Code:
<asp:GridView ID="grdData" runat="server" Width="100%">
<Columns>
<asp:TemplateField ShowHeader="False">
<FooterTemplate>
<asp:ImageButton ValidationGroup="Validation<%# ServerSidePublicProperty%>" ID="lbInsert" runat="server" CausesValidation="True" CommandArgument="Insert" CommandName="Insert" ></asp:ImageButton>
</FooterTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
I have multiple instances of the user control within a page so I have to add a unique value for the ValidationGroup using a ServerSidePublicProperty.
Yes it is. See below demo. But basically you just use a DataBinding Expression <%# %>.
In this demo the 2 columns have different ValidationGroups, so each button in the footer only validates that column.
<asp:GridView ID="GridView100" runat="server" AutoGenerateColumns="false" ShowFooter="true" Visible="true" Width="100%">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Eval("DBColumnA") %>'></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ValidationGroup='<%# "Validation_" + ServerSidePublicProperty1 %>' ControlToValidate="TextBox1" ErrorMessage="Error1"></asp:RequiredFieldValidator>
</ItemTemplate>
<FooterTemplate>
<asp:Button ID="Button1" runat="server" Text="Button" ValidationGroup='<%# "Validation_" + ServerSidePublicProperty1 %>'/>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Eval("DBColumnB") %>'></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ValidationGroup='<%# "Validation_" + ServerSidePublicProperty2 %>' ControlToValidate="TextBox2" ErrorMessage="Error2"></asp:RequiredFieldValidator>
</ItemTemplate>
<FooterTemplate>
<asp:Button ID="Button2" runat="server" Text="Button" ValidationGroup='<%# "Validation_" + ServerSidePublicProperty2 %>'/>
</FooterTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With