MSChart轴根据文本大小移动

时间:2016-10-10 10:38:46

标签: c# .net winforms mschart

现在有人在文本区域增加时如何防止Y轴移动(水平)(例如,在Y轴上的标签上显示100而不是1)。

下图说明了问题;当在标签上的数字上添加小数时,图表会调整大小并且Y轴向右移动: enter image description here

1 个答案:

答案 0 :(得分:1)

Axis和其他一些ChartElements可能会移动的原因是默认情况下他们的Positions设置为Automatic;因此,当标签需要更多空间时,它们就会得到它并且内部部分会减少。

因此,如果您想要阻止,则需要为其X的{​​{1}}值设置显式值。

请注意,各个容器的值均为百分比

除非您设置特殊Position值,否则主轴始终绘制在Crossing的左侧和底部。

所以你想设定位置,也许是这样:

InnerPlotArea

但请注意,这意味着:ChartArea ca = chart1.ChartAreas[0]; ca.InnerPlotPosition.X = 10; 将从Y-Axis 10%的{​​{1}}开始,这通常意味着整个whole ChartArea.Width。 ('almost 10%'和一些空格通常也占用一些空间。

因此,如果你调整图表的大小,轴可能会偏向右边。你可能想要玩这个数字,也许可以在图表的Chart.Width事件中编写额外的一行。

相关问题