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.