문제

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>
도움이 되었습니까?

해결책 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;
    }
}

다른 팁

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;
        }
    }
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top