2
我在C#中使用X轴上的自定义标签制作图表。该比例以日期为单位,并根据所选值进行更改(从一个月到两年)。它运作良好,每当我更改比例值时,图表的宽度保持不变;它只是调整栏宽。.NET图表自定义标签旋转
当我尝试旋转标签时发生问题。当我这样做时,它会根据每个不同的比例调整所有酒吧的大小,并且不会占用与原始大小相同的空间量。我希望能够旋转标签而无需调整所有内容。我可以这样做吗?这是为什么发生?我该如何解决它?
我使用添加自定义标签的代码是这样的:
DateTime StartMonthPos = XValues[0];
DateTime EndPos = new DateTime();
if (Time == 6 || Time == 12 || Time == 24)
{
foreach (DateTime Date in XValues)
{
EndPos = Date;
if (Date.Month != month)
{
Chart4.ChartAreas[0].AxisX.CustomLabels.Add(StartMonthPos.ToOADate(), EndPos.ToOADate(), StartMonthPos.ToString("MMMM"), 0, LabelMarkStyle.None);
StartMonthPos = Date;
}
month = Date.Month;
}
XAxis.CustomLabels.Add(StartMonthPos.ToOADate(), EndPos.ToOADate(), StartMonthPos.ToString("MMMM"), 0, LabelMarkStyle.None);
}
else
{
foreach (DateTime Date in XValues)
{
EndPos = Date;
Chart4.ChartAreas[0].AxisX.CustomLabels.Add(StartMonthPos.ToOADate(), EndPos.ToOADate(), StartMonthPos.ToString("M"), 0, LabelMarkStyle.None);
StartMonthPos = Date;
}
XAxis.CustomLabels.Add(StartMonthPos.ToOADate(), EndPos.ToOADate(), StartMonthPos.ToString("M"), 0, LabelMarkStyle.None);
}
如果我加入这行后的代码,事情搞的一团糟:
Chart4.ChartAreas[0].AxisX.LabelStyle.Angle = 0;
这里是一个从有问题的代码之前图片:
这里是后图片:
第二个不做得比较工作。图表的区域不会改变,但是图形的宽度会变化。如果我选择了这条路线,它可能会改为使用每个小节的宽度。仍然会尝试第一个。 – ijb109
@ ijb109我只是想问你是怎么回事?我会在第二条路线上找到代码(尽管没有任何承诺),而您可以尝试'XAML'路线。 :) – bonCodigo
我一直在研究'XAML'路由,但它不会很好,因为应用程序是使用ASP.Net编写的,我们正试图避免使用Silverlight。我仍然试图对上述代码进行不同的迭代以使其工作。 – ijb109