//Aspx file <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder> </ContentTemplate> </asp:UpdatePanel>
//c# file protected void Page_Load(object sender, EventArgs e) { BindChart(); } public void BindChart() //generate dynamic chart in different ajax tabs { //Create new TabContainer AjaxControlToolkit.TabContainer container = new AjaxControlToolkit.TabContainer(); container.ID = "TabContainer"; container.EnableViewState = false; container.Tabs.Clear(); container.Height = Unit.Pixel(1000); container.Width = Unit.Percentage(100); if (Listbox1.SelectedValue == "Select All") //If 'Select All' option is selected from Listbox1 { foreach (ListItem item in Listbox1.Items) { if (item.Text == "Select All") { continue; } AjaxControlToolkit.TabPanel panel = new AjaxControlToolkit.TabPanel(); //creating dynamic tabs panel.HeaderText += item.Text; container.Tabs.Add(panel); Label tabContent = new Label(); tabContent.ID += item.Text; tabContent.Text += item.Text; //Create dynamic chart in dynamic tabs Chart Chart1 = new Chart(); Chart1.DataSource = dt; Chart1.Width = 800; Chart1.Height = 500; Chart1.Series.Add(new Series()); Chart1.Series[0].ChartType = SeriesChartType.BoxPlot; List<object> List_CHART = dt.AsEnumerable().ToList<object>(); foreach (DataRow row in dt.Rows) { Chart1.Series[0].Points.AddXY(row["TITLE"], new object[] { row["MIN"], row["MAX"], row["25TH_PERCENTILE"], row["75TH_PERCENTILE"], row["50TH_PERCENTILE"], row["AVG"] }); } //create chartareas ChartArea ca= new ChartArea(); ca.AxisX = new Axis(); ca.AxisY = new Axis(); Chart1.ChartAreas.Add(ca); //databind Chart1.DataBind(); Chart1.Visible = true; panel.Controls.Add(Chart1); } } PlaceHolder1.Controls.Add(container); } public AjaxControlToolkit.TabPanel GetManualTab() { AjaxControlToolkit.TabPanel panel = new AjaxControlToolkit.TabPanel(); return panel; }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)