I use scriptManager in masterpage, because every content page is to be ajxify.
In content page, I use UpdatePanel and everything work fine but in case of content page where I use TabCOntainer, each time when I move from one tab to another tab, page is full postback.
Here one thing I notice that when I remove ScriptManager from master page and use in contentPage then tabContainer works fine.
What will be possible solution for such type condition?
MASTERPAGE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel_Register" runat="server">
<ContentTemplate>
//Update Panel work at Master Page
</ContentTemplate>
</asp:UpdatePanel>
<asp:ContentPlaceHolder ID="showcase" runat="server">
</asp:ContentPlaceHolder>
CONTENTPAGE
<%@ Page Title="" Language="C#" MasterPageFile="~/MasterDashBoard.master" AutoEventWireup="true"
CodeFile="messages.aspx.cs" Inherits="messages" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
<asp:UpdatePanel ID="UpdatePanel_msg" runat="server" >
<ContentTemplate>
<cc1:TabContainer ID="TabContainer1" runat="server" ActiveTabIndex="0" AutoPostBack="True"
OnActiveTabChanged="TabContainer1_ActiveTabChanged">
<cc1:TabPanel runat="server" HeaderText="TabPanel1" ID="TabPanel1" ToolTip="Compose Message">
<HeaderTemplate>
Compose
</HeaderTemplate>
<ContentTemplate>
Some Work
</ContentTemplate>
</cc1:TabPanel>
<cc1:TabPanel runat="server" HeaderText="TabPanel2" ID="TabPanel2">
<HeaderTemplate>
inbox
</HeaderTemplate>
<ContentTemplate>
SOme Work
</ContentTemplate>
</cc1:TabPanel>
</cc1:TabContainer>
</ContentTemplate>
</asp:UpdatePanel>
I have a similar use case and set
UpdateMode="Conditional",ChildrenAsTriggers="true"and useAsyncPostbackTriggersfor theActiveTabChangedevent. In theActiveTabChangedevent handler i switch visibility of the containing controls and callUpdateon the according UpdatePanel and finally on the surroundingUpdatePanel. This allows furthermore to lazy-load the Tabs by loading their content only when needed.