本指南展示了如何限制 轴的可视范围和滚动范围,从而使用户只能访问图表下层数据的一部分。
Show Me |
---|
在 DevExpress Code Central 数据库中可以找到完整的示例项目,网址是 http://www.devexpress.com/example=E1383。 取决于目标平台类型 (ASP.NET、WinForms 等),可以在线运行本示例,或者下载自动可执行的示例。 |
要指定轴的 可视范围 和 滚动范围,则执行下列操作。
-
新建一个图表,或者打开一个现有的图表。 在本示例中,我们将使用一个简单的 XY-图表,如下图所示。
-
选中图表图像的 X 轴,并在 属性 窗口中,展开 AxisBase.Range 属性。
通过 AxisRange.MinValue 和 AxisRange.MaxValue 属性来设置两个边界值,来限制 X 轴的可视范围。 注意,当改变这两个属性之一时,AxisRange.Auto 属性被自动设置为 false。
在使用 性质 或 日期时间 轴刻度类型 的情况下,更适于通过 AxisRange.MinValueInternal 和 AxisRange.MaxValueInternal 属性,使用轴取值的内部浮点表示来限制轴范围。 当需要限制轴的可视范围、而不完全通过其取值、但是介于取其值之间时,同样适用。
要指定在轴的临界取值之后保留的空间,可以使用 AxisRange.SideMarginsEnabled 属性。 注意,启用此选项会限制 AxisRange.MinValueInternal 和 AxisRange.MaxValueInternal 属性的精度,因为在轴的取值范围中有一个不确定的由侧边距占用的范围。
-
现在,我们可以允许最终用户沿限定的 X 轴滚动图象,来访问视图外的系列点。 要这样做,则启用 XYDiagram2D.EnableAxisXScrolling 属性。 此后,如果对应 窗格 的 XYDiagramPaneBase.EnableAxisXScrolling 属性也被启用 (或设置为默认值),则沿 X 轴出现一个滚动条。
-
最后,还可以限制滚动范围,使此范围之外的点完全不能被最终用户访问。
要这样做,则选中 X 轴,并在 属性 窗口中,展开 AxisBase.Range 属性。 在其中,再展开 AxisRange.ScrollingRange 属性。 您将能看到一组属性,它们与轴的可视范围选项完全一致。
这样,要限制滚动范围,就指定 ScrollingRange.MinValue 和 ScrollingRange.MaxValue (或 ScrollingRange.MinValueInternal 和 ScrollingRange.MaxValueInternal) 属性。 在指定这些属性之一后,ScrollingRange.Auto 属性也自动被禁用。
ScrollingRange.SideMarginsEnabled 属性的实现类似于轴范围的对应属性。
如果需要,还可以通过 XYDiagram2D.ScrollingOptions 属性来指定如何滚动图象 (使用键盘、鼠标或滚动条)。