Please find the code below.
protected void Page_Load(object sender, EventArgs e)
{
UserTableAdapter UserAdapter = new UserTableAdapter();
Label2.Text = UserAdapter.GetDataByUID(Global.UID).Rows[0][6].ToString();
if (!Page.IsPostBack)
{
CreateTabs();
}
}
protected void newLink_Click(object sender, EventArgs e)
{
Label2.Text = "Click";
}
private void CreateTabs()
{
Layout1TableAdapter Layout1Adapter = new Layout1TableAdapter();
int Tab_Count = Layout1Adapter.GetGroupByUID(Global.UID).Rows.Count;
RadTab[] Tabs = new RadTab[Tab_Count];
for (int i = 0; i < Tab_Count; i++)
{
Tabs[i] = new RadTab();
Tabs[i].Text = Layout1Adapter.GetGroupByUID(Global.UID).Rows[i][0].ToString();
RadTabStrip1.Tabs.Add(Tabs[i]);
AddPageView(Tabs[i].Text);
PageLayout(RadMultiPage1.FindPageViewByID(Tabs[i].Text), Tabs[i].Text);
}
}
protected void RadTabStrip1_TabClick(object sender, RadTabStripEventArgs e)
{
PageLayout(RadMultiPage1.FindPageViewByID(e.Tab.Text), e.Tab.Text);
}
private void AddPageView(string pageViewID)
{
RadPageView pageView = new RadPageView();
pageView.ID = pageViewID;
pageView.Width = new Unit("1020px");
RadMultiPage1.PageViews.Add(pageView);
}
private void PageLayout(RadPageView PageView, string pageViewID)
{
RadDockLayout DockLayout = new RadDockLayout();
RadDockZone Zone1 = new RadDockZone();
RadDockZone Zone2 = new RadDockZone();
Zone1.BackColor = System.Drawing.Color.White;
Zone1.MinHeight = new Unit("10px");
Zone1.Width = new Unit("485px");
Zone1.BorderStyle = BorderStyle.None;
Zone1.Style.Add(HtmlTextWriterStyle.Position, "absolute");
Zone1.Style.Add(HtmlTextWriterStyle.Left, "5px");
Zone2.BackColor = System.Drawing.Color.White;
Zone2.MinHeight = new Unit("10px");
Zone2.Width = new Unit("485px");
Zone2.BorderStyle = BorderStyle.None;
Zone2.Style.Add(HtmlTextWriterStyle.Position, "absolute");
Zone2.Style.Add(HtmlTextWriterStyle.Left, "505px");
Layout2TableAdapter Layout2Adapter = new Layout2TableAdapter();
int Dock_Count = Layout2Adapter.GetSubGroup(Global.UID, pageViewID).Rows.Count;
RadDock[] Docks = new RadDock[Dock_Count];
for (int i = 0; i < Dock_Count; i++)
{
Docks[i] = new RadDock();
Docks[i].Width = new Unit("485px");
Docks[i].Skin = "Telerik";
Docks[i].DefaultCommands = Telerik.Web.UI.Dock.DefaultCommands.ExpandCollapse;
Docks[i].DockMode = DockMode.Docked;
Docks[i].Title = Layout2Adapter.GetSubGroup(Global.UID, pageViewID).Rows[i][0].ToString();
Dock_Layout(Docks[i], pageViewID);
if (i % 2 == 0) Zone1.Controls.Add(Docks[i]);
else Zone2.Controls.Add(Docks[i]);
}
DockLayout.Controls.Add(Zone1);
DockLayout.Controls.Add(Zone2);
PageView.Controls.Add(DockLayout);
}
private void Dock_Layout(RadDock Dock, string PageViewID)
{
Layout3TableAdapter Layout3Adapter = new Layout3TableAdapter();
ReportTableAdapter ReportAdapter = new ReportTableAdapter();
QueriesTableAdapter QueryAdapter = new QueriesTableAdapter();
int Report_Count = Convert.ToInt32(QueryAdapter.ReportCount(Global.UID, PageViewID, Dock.Title));
if (Report_Count > 0)
{
Label[] Labels = new Label[Report_Count];
LinkButton[] Links = new LinkButton[Report_Count];
int RID = 0;
string Dock_Height = "";
string Link_Top = "";
string Label_Top = "";
for (int j = 0; j < Report_Count; j++)
{
RID = Convert.ToInt32(Layout3Adapter.GetReport(Global.UID, PageViewID, Dock.Title).Rows[j][0]);
Dock_Height = (j * 60 + 90) + "px";
Link_Top = (j * 55 + 10) + "px";
Label_Top = (j * 55 + 25) + "px";
Dock.Height = new Unit(Dock_Height);
Links[j] = new LinkButton();
Links[j].ID = "Link" + j;
Links[j].Font.Underline = false;
Links[j].Click += new EventHandler(newLink_Click);
Links[j].Style.Add(HtmlTextWriterStyle.Position, "absolute");
Links[j].Style.Add(HtmlTextWriterStyle.Left, "5px");
Links[j].Text = (j + 1) + ". " + ReportAdapter.GetDataByRID(RID).Rows[0][1].ToString();
Links[j].Style.Add(HtmlTextWriterStyle.Top, Link_Top);
Dock.ContentContainer.Controls.Add(Links[j]);
AjaxSetting AS = new AjaxSetting(Links[j].ID);
AjaxUpdatedControl AUC = new AjaxUpdatedControl("Label2", "RadAjaxLoadingPanel1");
AS.UpdatedControls.Add(AUC);
RadAjaxManager1.AjaxSettings.Add(AS);
Labels[j] = new Label();
Labels[j].Text = ReportAdapter.GetDataByRID(RID).Rows[0][2].ToString();
Labels[j].Font.Italic = true;
Labels[j].Style.Add(HtmlTextWriterStyle.Position, "absolute");
Labels[j].Style.Add(HtmlTextWriterStyle.Left, "20px");
Labels[j].Style.Add(HtmlTextWriterStyle.Top, Label_Top);
Dock.ContentContainer.Controls.Add(Labels[j]);
}
}
}