Frage

I have a DropDownList and a chart created in ASP.net.The existing items of it are bar chart and pie chart.

I need to select my chart in to the format which is selected in the DropDownList. Is there any possible way to do this??Thank you in advance....!

My coding is as follows.

<asp:DropDownList ID="drpChart" runat="server" AutoPostBack="True" Height="24px" Width="142px">
                            <asp:ListItem>Bar Chart</asp:ListItem>
                            <asp:ListItem>Pie Chart</asp:ListItem>
                            </asp:DropDownList>

<asp:Chart ID="Chart2" runat="server" style="margin-left: 40px">
                    <Series>
                        <asp:Series Name="Series1">
                        </asp:Series>
                    </Series>
                    <ChartAreas>
                        <asp:ChartArea Name="ChartArea1">
                        </asp:ChartArea>
                    </ChartAreas>
                </asp:Chart>
War es hilfreich?

Lösung 2

A simple switch statement will do the trick:

ASPX:

<asp:DropDownList ID="drpChart" runat="server" AutoPostBack="True" Height="24px"
    Width="142px">
    <asp:ListItem>Bar Chart</asp:ListItem>
    <asp:ListItem>Pie Chart</asp:ListItem>
</asp:DropDownList><br />
<asp:Chart ID="Chart1" runat="server">
    <Series>
        <asp:Series Name="Series1">
        </asp:Series>
    </Series>
    <ChartAreas>
        <asp:ChartArea Name="ChartArea1">
        </asp:ChartArea>
    </ChartAreas>
</asp:Chart>

Code behind:

protected void Page_Load(object sender, EventArgs e)
{
    var employees = new Dictionary<int, string>
        {
            {10, "Product A"},{20, "Product B"},{30, "Product C"}
        };

    foreach (KeyValuePair<int, string> employee in employees)
    {
        Chart1.Series[0].Points.AddXY(employee.Value, employee.Key);
    }

    string chartType = drpChart.SelectedValue;
    switch(chartType)
    {
        case "Bar Chart":
            Chart1.Series[0].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Bar;
            break;
        case "Pie Chart":
            Chart1.Series[0].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Pie;
            break;
    }
}

Andere Tipps

Use you code in DropDownList event i use the same function

here is my code:

protected void Dd_Graph_Selection_SelectedIndexChanged(object sender, EventArgs e)
    {
        string chartType = Dd_Graph_Selection.SelectedValue;
        switch (chartType)
        {
            case "Column Chart":
                Chart1.Series[0].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Column;
                break;
            case "Pie Chart":
                Chart1.Series[0].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Pie;
                break;
            case "Bar Chart":
                Chart1.Series[0].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Bar;
                break;
            case "BoxPlot Chart":
                Chart1.Series[0].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.BoxPlot;
                break;
            case "Funnel Chart":
                Chart1.Series[0].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Funnel;
                break;
            case "Point Chart":
                Chart1.Series[0].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Point;
                break;
            case "Spilinr Chart":
                Chart1.Series[0].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Spline;
                break;
            case "Bubble Chart":
                Chart1.Series[0].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Bubble;
                break;
        }
    }
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top