フォーム要素のプロパティをXMLに保存(コントロール状態を保存)
質問
私はいくつかのプロジェクトで設定を保存するためのxmlライブラリを使用していますが、その仕組みは次のようになりました:
saveSettings(Control control, XmlConfig config, string controlName)
次に、その中のすべてのコントロールを(再帰的に)検索し、新しいコントロールを見つけるたびにそれ自体を呼び出し、などのxmlファイルにすべての情報を保存します:
次に、それらをロードし直します。
前回使用したのはフレームワーク2でしたが、最近再び必要になり、再利用しました。通常のようにXMLファイルを保存しますが、xmlファイルを読み込んだ後にフォームを更新していないようです。理由を見つけてください。すべてのコードが正しいようです。
誰でも素敵な代替品を知っていますか? (デフォルトのアプリケーション設定では、単純な手法を使用しますが、保存するコントロールを指定する手法ははるかに簡単で、どこでも機能します)
事前に感謝=)
解決
まあ、私はこれを行いますが、あなたの説明よりも明確に。しばらく前にこれをサポートするために、一連のインターフェースとクラスをまとめました。それらは次のように使用されます:
readonly ObjectSerializer _serializer;
public MyForm()
{
_serializer = new ObjectSerializer(this,
"Top", "Left", "Height", "Width",
"_splitter.SplitterDistance");
_serializer.ContinueOnError = true;
}
private void Form_Load(object sender, EventArgs e)
{
_serializer.Deserialize(new CSharpTest.Net.Serialization.StorageClasses.UserSettingStorage());
}
void Form_Closing(object sender, FormClosingEventArgs e)
{
_serializer.Serialize(new CSharpTest.Net.Serialization.StorageClasses.UserSettingStorage());
}
使用されているライブラリ" CSharpTest.Net.Library.dll"次の場所にあります:
所属していません StackOverflow