0

Is it possible to use a single gridview and display it on multiple tabs (ajax tabcontainer)? I want to bind different datasources to the grid on different tabs. I am currently using 3 gridviews (for 3 tabs) for this purpose.

<asp:TabContainer ID="TabContainer1" runat="server" UseVerticalStripPlacement="True" AutoPostBack="true" OnActiveTabChanged="TabContainer1_ActiveTabChanged">
        <asp:TabPanel ID="tp1" runat="server">
            <HeaderTemplate>
                Tab 1
            </HeaderTemplate>
            <ContentTemplate>
                <p>test tab 1</p>
                <asp:GridView ID="GridView1" runat="server" Width="100%"
                    ViewStateMode="Enabled" OnRowEditing="GridView1_RowEditing">
                    <Columns>
                        <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" />
                    </Columns>
                </asp:GridView>
            </ContentTemplate>
        </asp:TabPanel>
        <asp:TabPanel ID="tp2" runat="server">
            <HeaderTemplate>
                Tab 2
            </HeaderTemplate>
            <ContentTemplate>
                <p>test tab 2</p>
                <asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="True" Width="100%"
                    ViewStateMode="Enabled">
                </asp:GridView>
            </ContentTemplate>
        </asp:TabPanel>
        <asp:TabPanel ID="tp3" runat="server">
            <HeaderTemplate>
                Tab 3
            </HeaderTemplate>
            <ContentTemplate>
                <p>test tab 3</p>
                <asp:GridView ID="GridView3" runat="server" AutoGenerateColumns="True" Width="100%"
                    ViewStateMode="Enabled">
                </asp:GridView>
            </ContentTemplate>
        </asp:TabPanel>
    </asp:TabContainer>

code behind:

 protected void TabContainer1_ActiveTabChanged(object sender, EventArgs e) 
{ 

    try 
    { 
        if (TabContainer1.ActiveTabIndex == 0) 
        {

            //bind datasource 1;

        }
        if (TabContainer1.ActiveTabIndex == 0) 
        {

            //bind datasource 2;

        }  
    }etc.
who-aditya-nawandar
  • 1,334
  • 9
  • 39
  • 89

1 Answers1

0

for showing gridview1 in tabpanel 2

tp2.Controls.Add(GridView1);

general form

<TabPanelID>.Controls.Add(<GridviewID>);
A Beginner
  • 447
  • 1
  • 6
  • 11