1

为了保存我的应用程序的所有设置,我在文件中使用序列化,如本教程中所述:http: //www.codeproject.com/Articles/1789/Object-Serialization-using-C

所以我创建了一个名为 Keyboard 的类

[Serializable()]
class Keyboard : ISerializable
{
    private DeviceInf _infoKbd;
    private Screen _displayAttached;
}

当我启动我的程序时,应用程序在序列化过程中崩溃,说 Screen 不可序列化。所以我的问题是:如何序列化一开始不可序列化的.NET?

4

2 回答 2

1

System.Windows.Forms.Screen对象未标记为可序列化,因此 .NET 不会为您完成繁重的工作。不过,您可以编写自己的序列化程序。可以在http://www.codeproject.com/Articles/86503/Saving-the-state-serializing-a-Windows-Form找到序列化表单的示例。如果您不想这样做,也许您可​​以将设置保存在 app.config 文件中。

于 2012-11-28T16:05:53.027 回答
0

我怀疑您必须使 DeviceInfo 和 Screen 也可序列化。

于 2012-11-28T15:53:58.793 回答