2012-04-13 15 views
1

ユーザーレベルのアプリケーション設定を作成してフォーム上のテキストボックスにバインドし、テキストボックスに何かを入力すると、値が自動的に保存され、アプリケーションが再び起動されるとテキストボックスに表示されます。これはアプリケーションとして設定をスコープするときには発生しません。アプリケーション設定スコープ - ユーザーvsアプリケーション

なぜアプリケーションスコープの設定は、ユーザースコープの設定のように自動的に保存されないのですか?

これは仕様による場合、これらの設定を手動で保存して実行時にロードするにはどうすればよいですか。

答えて

4

つまり、実行時にアプリケーションスコープの設定を変更することはできませんが、ユーザースコープの設定は実行時に読み書きできるように設計されています。

  • 使用ユーザーは
  • ThisポストはのConfigurationManagerクラスに探してお勧めします設定をスコープ:アプリケーションを使用する選択肢の数が設定値をスコープがあります。彼らはあなたが

This postが欲しい、これまであなたがあなた自身のSettingsProviderを実装することができますし、それらが書かれているアプリケーションディレクトリに書き込まれませんので

  • ユーザーが気に入らない場合は、設定のスコープの方法についていくつかの勧告をしています最適な設定を管理する。最後に、拡張アーキテクチャや独自のアーキテクチャに興味がある場合は、設定アーキテクチャに関するMicrosoft's documentationがあります。

  • +0

    したがって、アプリケーションスコープの設定は、プロパティウィンドウで設計時に設定してから放置しますか?それらはディスクに書き込まれず、実行時にファイルからロードされます。 –

    +0

    @YourMother sort of。アプリケーションスコープの設定のデフォルト値は、アプリケーションにコンパイルされます(デザイナーが設定を書き込むプロパティフォルダ - >設定。設定を参照)。これらの値は、アプリケーションのコンパイル後にMyApp.exe.configファイルで上書きすることもできます。 –

    +0

    ありがとうございます。私はこれをテストし、それはどのように動作するようです。私は確かに .exe.configファイルを編集して、デフォルトの設定を上書きすることができます。私の質問は、私はこのファイルを削除する場合は、アプリケーションがデフォルトを再度ロードするようです。だから、それはアプリケーションにコンパイルされて表示されます。 configファイルが誤って削除され、新しい値で編集された場合はどうなりますか?それは何とかデフォルト値で再生成できますか?ただ行動を理解しようとしています。 –

    関連する問題