Xan*_*ham 7 c# charts customization mschart
假设我有一个包含2个系列的图表.然后对于每个系列,我都有一个复选框,说明我是否想要查看它们.假设我最初绘制两个,然后想要隐藏它们中的任何一个.做这个的最好方式是什么?
我知道我可以Clear(),然后AddXY()他们回来,但有更快的方法吗?
我的想法是:
1.根据复选框将visibility属性设置为true/false.
没有可见性属性
2.将点集合复制到变量,清除并重新放入.
Series[].Points是只读的
3.将系列复制到变量,清除点,然后放回.
显然它将系列存储为参考当我尝试这个,我找不到复制命令.
所以我显然是错误的做法.你如何动态地允许图表隐藏不同的系列?
Lar*_*rry 21
要隐藏MSChart中的系列,请以Enabled这种方式使用该属性:
msChart.Series["Series"].Enabled = false;
Run Code Online (Sandbox Code Playgroud)
并再次显示:
msChart.Series["Series"].Enabled = true;
Run Code Online (Sandbox Code Playgroud)
所以你不需要删除点并重新添加它们.
还有另一种方法可以在不隐藏图例的情况下执行此操作。
简单地说:
Chart.Series[0].Color = Color.FromArgb(0, 0, 0, 0); //sets color to transparent
Run Code Online (Sandbox Code Playgroud)
您可以稍后重置为 Color.Empty 以恢复默认颜色。
这里唯一的缺点是,除非隐藏该系列中的最后一项,否则其他行将被重新着色
| 归档时间: |
|
| 查看次数: |
19576 次 |
| 最近记录: |