【问题标题】:An ASP.NET Chart control is refreshed on page post back -- but I don't want it to be一个 ASP.NET 图表控件在页面回发时刷新——但我不希望它是
【发布时间】:2010-08-03 22:19:44
【问题描述】:

一个 ASP.NET 图表控件在页面回发时被刷新——但我不希望这样。

在我的 aspx 中,我有:

    <asp:Panel runat="server" ID="PanelRight" CssClass="roadmapRight">
        <asp:Chart ID="ChartRemainingDaysHistory" runat="server">
            <Series>
            </Series>
            <ChartAreas>
                <asp:ChartArea Name="ChartAreaLineGraph">
                    <AxisY Title="Days Remaining" />
                    <AxisX Title="Date" IsLabelAutoFit="True">
                        <LabelStyle Angle="90" Interval="2" />
                    </AxisX>
                </asp:ChartArea>
            </ChartAreas>
        </asp:Chart>
    </asp:Panel>

在后面的代码中:

protected void Page_Load(object sender, EventArgs e)
{
    /* A bunch of code that needs to run */

    if(IsPostback) return;  // return if it is postback

    // On first run build the graph

    IQueryable<int> _users = 
        (metaPlanningDataContext.TasksCurrents.Where(....)).Distinct();

    var s = new Series { 
        ChartType = SeriesChartType.Area, 
        Legend = "Engineer", 
        LegendText = "someName" };
    foreach (DateTime dateTimeKey in someDataSet.Keys)
    {
        s.Points.AddXY(dateTimeKey.ToOADate(), someDataSet[dateTimeKey]);
    }
}

问题在于,在某个其他控件 (Telerik RadGrid) 的回发中,图表系列内容消失了。

如何确保控件在回发中不被破坏?

【问题讨论】:

    标签: asp.net ajax postback


    【解决方案1】:

    问题是回发后图表不是页面加载时生成的图表吗?我认为图表上有一个名为EnableViewState的设置...您可以尝试将其设置为true

    <asp:Panel runat="server" ID="PanelRight" CssClass="roadmapRight">
        <asp:Chart ID="ChartRemainingDaysHistory" runat="server" EnableViewState="true">
            <Series>
            </Series>
            <ChartAreas>
                <asp:ChartArea Name="ChartAreaLineGraph">
                    <AxisY Title="Days Remaining" />
                    <AxisX Title="Date" IsLabelAutoFit="True">
                        <LabelStyle Angle="90" Interval="2" />
                    </AxisX>
                </asp:ChartArea>
            </ChartAreas>
        </asp:Chart>
    </asp:Panel>
    

    如果我坐错了电车,请发表评论...

    【讨论】:

      猜你喜欢
      • 2016-11-28
      • 1970-01-01
      • 2023-03-18
      • 2018-03-07
      • 1970-01-01
      • 2011-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多