4

GUI とユーザー設定用の設定ファイルを使用して C# アプリを作成しました。ただし、設定の現在の値を読み取ろうとするMySettings.Default.SettingsName;と、最初の設定セットで完全に機能するようになりますMyFirstSettings。ただし、2 番目については、 と呼びましょMySecondSettingsAmbiguity between My first Settings.Default and MySecondSettings.Default。設定にアクセスする他の方法を見つけることができませんでしたが、使用する方法は.Defaultありません。

どんなヒントでも大歓迎です!

アクセル

4

3 に答える 3

5

2 つの設定ファイルがある場合、通常は問題なく動作します。

以下は私にとって完全に機能します(そしてコンパイルします):

Settings1.Default.Value1 = "11";
Settings1.Default.Save();

Settings2.Default.Value1 = "22";
Settings2.Default.Save();

そのため、Settings2 ファイルを独自の方法で作成/コピーし、VisualStudio の外部で実際には「公正な」方法ではない場合 (たとえば)、問題が発生する可能性があります。(その場合、両方の設定ファイルが同じ「Settings1」クラスを参照している可能性があります)。


私がSettings2ファイルを作成した方法は、調査したソリューションにドラッグアンドドロップし(Ctrlキーを押して(コピー))、「Settings1のコピー」から「Settings2」に名前を変更することです。

「追加/新しい項目...」を選択して、新しい設定ファイルを選択することも大いに機能します。

編集:

質問の著者が以下にコメントしたように:

DAQSettings の「フォルダ」で、デザイナーの 2 つのインスタンスを見つけました。1 つは Day Settings1.Designer という名前で、もう 1 つはちょうど Settings.Designer という名前です。

...特定のクラス/要素に重複(重複した命名)があったため、そこに何が問題だったかを説明しているため、問題を解決する方法は「手動で関与する」ことです。

于 2013-11-10T19:13:49.653 に答える
1

私の場合、実際にはデフォルト設定ファイル名に設定がありましたDefault。これにより、次のエラーが発生しました

 Ambiguity between Settings.Default and Settings.Default

これを変更すると、エラーが解決しました。

: はい、その設定に「デフォルト」という名前を付けるのは悪い考えでしたが、これは 1 つのことを行う非常に小さなプログラムであるため、誰かが私の後ろに来てこれを見た場合、おそらくその目的を理解するでしょう。

于 2016-10-13T03:44:32.183 に答える