【发布时间】:2012-11-20 16:54:03
【问题描述】:
我正在制作一个图表,显示从dropdown 列表中选择的可变时间段内的出勤率。我正在尝试根据所选值更改 x 轴的间隔。我使用了 MSDN 的图表控件教程中的代码,但问题是当我选择下拉项时,我只能得到一两个间隔。
当我选择 1(1 个月)时,我会得到一个从 10 月 14 日开始的间隔,即最短日期。 当我选择 3(3 个月)时,我应该得到几个两周的间隔,但我只得到 2 个月的间隔。
谁能帮我弄清楚为什么我会得到这些结果以及如何解决它?
下面的代码显示了我目前在下拉列表的事件处理程序中的内容:
public void AttendanceChange(Object sender, EventArgs e){
string StatusSelect = this.AttendanceSelect.SelectedValue;
int Time = Convert.ToInt32(StatusSelect);
if (Time == 1)
SetAxisInterval(Chart3.ChartAreas[0].AxisX, 1, DateTimeIntervalType.Weeks);
else if (Time == 3)
SetAxisInterval(Chart3.ChartAreas[0].AxisX, 1, DateTimeIntervalType.Weeks);
else if (Time == 6)
SetAxisInterval(Chart3.ChartAreas[0].AxisX, 1, DateTimeIntervalType.Months);
else if (Time == 12)
SetAxisInterval(Chart3.ChartAreas[0].AxisX, 2, DateTimeIntervalType.Months);
else if (Time == 24)
SetAxisInterval(Chart3.ChartAreas[0].AxisX, 3, DateTimeIntervalType.Months);
}
以下是更改间隔的方法:
public void SetAxisInterval(Axis axis, int interval, DateTimeIntervalType intervalType)
{
axis.Interval = interval;
axis.IntervalType = intervalType;
}
【问题讨论】:
-
我已经编辑了你的标题。请参阅“Should questions include “tags” in their titles?”,其中的共识是“不,他们不应该”。
-
谢谢,约翰!以后我会牢记这一点。
标签: c# asp.net charts axis-labels