【发布时间】: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) 的回发中,图表系列内容消失了。
如何确保控件在回发中不被破坏?
【问题讨论】: