4

克隆 Microsoft Chart Control 对象的推荐方法是什么?因为它是一个第三方库,所以我不能使用这里提到的解决方案,因为我不能将对象标记为可序列化。

最好,我不想引入任何第三方控件来克隆图表,除非如果没有一个绝对不可能这样做。

4

2 回答 2

7

您不需要将其标记为可序列化,因为图表已经具备序列化的能力。查看此MS Charts文档以获取更多信息

从这里,您可以将图表序列化为字符串,然后立即将字符串反序列化为图表对象的新实例。这将类似于克隆,并且似乎是您的问题中提到的答案正在做的事情。这可能不是最有效的方法,但它会起作用

编辑

此代码未经测试但应该可以工作(对于如何完成此操作相当准确)

Chart chart1 = new Chart();
//Enter your chart building code here
System.IO.MemoryStream myStream = new System.IO.MemoryStream();
Chart chart2 = new Chart();
chart1.Serializer.Save(myStream);
chart2.Serializer.Load(myStream);
于 2013-07-28T17:41:48.067 回答
0

这并不能完全回答您的问题,但它可以帮助您实现您的功能。您可以使用控制Drill Down功能Chart来生成用户单击的图表部分的详细视图。参考 mschart 的示例环境

于 2013-07-28T08:47:00.030 回答