0

我正在开发一个应用程序来绘制存储在文件中的基于时间的数据。每个文件最多可以有 5 个可以绘制图表的数据集。应用程序本身最多可以渲染 10 个这些文件(因此可以在屏幕上渲染 50 个图形)。

由于屏幕上可能有多个图表——顺便说一下,它们是折线图——我希望为用户提供一种方法来选择 50 个可能的折线图中每一个的颜色。

我已经有了一个用户界面,它将为用户提供一种简单的方式来做到这一点。问题是我无法想出一种优雅的方式来存储 50 个可能的折线图(顺便说一下,持久存储)中的每一个的颜色信息。

到目前为止,我所尝试的是将 50 行颜色选择中的每一个存储在应用程序设置文件(例如,Properties.Settings.Default命名空间)中。不幸的是,有 50 个设置,它们都是按顺序命名的,例如File1DataSet1Color, File1DataSet2Color, File1DataSet3Color, File1DataSet4Color, File1DataSet5Color, File2DataSet1Color, 等等。不幸的是,这导致了一些异常冗长和重复的图形渲染代码。

所以我的问题是:对于 50 条线图的颜色设置的持久存储,什么是优雅的解决方案,它不会导致我的渲染代码中出现脆弱或重复的代码?

4

2 回答 2

0

也许您可以将一个 s 数组序列化int到一个文件中。(二维。用于颜色的 3 个部分。)

BinaryFormatter formater = new BinaryFormatter();
string path = "path";
object data = "data";
using (Stream stream = File.Create(path))
    formater.Serialize(stream, data); 

或者: 如何在应用程序设置中存储 int[] 数组

于 2012-07-25T16:42:06.520 回答
0

看起来 XML 序列化是我要走的路。

于 2012-07-25T16:54:10.573 回答