プロジェクト> MyProjectのプロパティ>設定の下で、ダブルタイプのMyDoubleという名前のアプリケーション設定があります。有効範囲はユーザーです。デフォルト値は1.5です。WinFormsアプリケーションの設定が割り当てられていません。
私はそれを見て、アプリケーション全体を踏んでみて、値を表示するMessageBoxesを試してみました。私は、クラス(Form1)のレベル変数を設定しようとしている場所を除いて、そのすべての用途をコメントアウトしました。これは次のようになります。
double myDouble = Properties.Settings.Default.MyDouble;
この値は常にゼロです。私はMessageBox myDoubleまたはアプリケーションの設定結果がゼロの場合。
一部のアプリケーション設定が機能しています。私はForm1_Shownイベントで2つのメッセージボックスを呼び出しました。一用途:
Properties.Settings.Default.MyDouble.ToString()
及び他の用途:
Properties.Settings.Default.MyInt.ToString()
第二つの出力正しい値。
このプロジェクトは、C#で書かれたWinFormsアプリケーションです。 Windows 10とVisual Studio 2017を使用しています。 このプロジェクトのフォームは、以前のプロジェクトからコピーされましたが、影響を受ける可能性はありません。以前のプロジェクトの価値は同じでした。私は手作業でこれらのアプリケーションの設定をタイプしました。スペルが正しいことを確認するために再確認しました。セットアッププロジェクトを無駄に削除しました。ソリューションをクリーンアップし、再構築しました。私はapp.configファイルもチェックしました。私は何か間違っているとは思わない。ここにあります:
これを修正する方法はありますか?
あなたが設定範囲を確認してい? – user12345
@ user12345しました。ユーザーのスコープがあることを反映するために質問を更新しました。すべてのアプリケーション設定にはユーザースコープがあります。 – DavidG
デフォルト値が1.5で、値が0の場合。0であれば、少なくとも1回は設定を正常に保存しました。それはあなたが好きな値ではない、そう、起こります。 user.configファイルを編集して、うまくいけば一時的な問題を回避することができます。 c:\ users \ yourname \ appdata \ local \ projectname \ blablablaに戻るのはちょっと難しいです。 –