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オブジェクトはSearializableとしてマークされていないため、.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 に答える