Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Data Binding Expression in GridView

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.

like image 439
developer Avatar asked Mar 11 '26 08:03

developer


1 Answers

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>
like image 181
VDWWD Avatar answered Mar 13 '26 03:03

VDWWD