サイトアイコン 知的好奇心

C#でWindowsアプリケーションの設定を保存する方法

C#でWindowsアプリケーションの設定を保存する方法をご紹介します。
ユーザーが個別にアプリケーションの設定を行い、その設定を永続化する際などに使用します。

条件

アプリケーションの設定

Visual Studioにおいて、対象プロジェクトを右クリック > プロパティを選択します。

プロジェクトのプロパティ設定が開くので、左メニューで設定を選択します。

設定したい値(名前、種類、スコープ、値)を入力して、プロパティを保存します。

アプリケーション設定の読み込み

以下のようにすることで、設定値を読み込むことが出来ます。

実装例

// アプリケーション設定値を出力する。
Console.WriteLine(Properties.Settings.Default.name1);
Console.WriteLine(Properties.Settings.Default.name2);
Console.WriteLine(Properties.Settings.Default.value1);
Console.WriteLine(Properties.Settings.Default.value2);

実行結果

名前1です。
名前2です。
1
2

アプリケーション設定の更新

以下のようにすることで、設定値を更新することが出来ます。

実装例

// アプリケーション設定値(更新前)
Console.WriteLine("=== アプリケーション設定値(更新前)===");

// アプリケーション設定値を出力する。
Console.WriteLine(Properties.Settings.Default.name1);
Console.WriteLine(Properties.Settings.Default.name2);
Console.WriteLine(Properties.Settings.Default.value1);
Console.WriteLine(Properties.Settings.Default.value2);

Properties.Settings.Default.name1 = "name1を更新";
Properties.Settings.Default.name2 = "name2を更新";
Properties.Settings.Default.value1 = 111;
Properties.Settings.Default.value2 = 2.222;

// アプリケーション設定値(更新後)
Console.WriteLine("=== アプリケーション設定値(更新後)===");

// アプリケーション設定値を出力する。
Console.WriteLine(Properties.Settings.Default.name1);
Console.WriteLine(Properties.Settings.Default.name2);
Console.WriteLine(Properties.Settings.Default.value1);
Console.WriteLine(Properties.Settings.Default.value2);

実行結果

=== アプリケーション設定値(更新前)===
名前1です。
名前2です。
1
2
=== アプリケーション設定値(更新後)===
name1を更新
name2を更新
111
2.222

アプリケーション設定の保存

以下のようにすることで、設定値を保存することが出来ます。

実装例

// アプリケーション設定値(更新前)
Console.WriteLine("=== アプリケーション設定値(更新前)===");

// アプリケーション設定値を出力する。
Console.WriteLine(Properties.Settings.Default.name1);
Console.WriteLine(Properties.Settings.Default.name2);
Console.WriteLine(Properties.Settings.Default.value1);
Console.WriteLine(Properties.Settings.Default.value2);

Properties.Settings.Default.name1 = "name1を更新";
Properties.Settings.Default.name2 = "name2を更新";
Properties.Settings.Default.value1 = 111;
Properties.Settings.Default.value2 = 2.222;

// アプリケーション設定値(更新後)
Console.WriteLine("=== アプリケーション設定値(更新後)===");

// アプリケーション設定値を出力する。
Console.WriteLine(Properties.Settings.Default.name1);
Console.WriteLine(Properties.Settings.Default.name2);
Console.WriteLine(Properties.Settings.Default.value1);
Console.WriteLine(Properties.Settings.Default.value2);

// アプリケーション設定値を保存する。
Properties.Settings.Default.Save();

実行結果

1回目

更新前の設定値は、デフォルト値(プロパティで指定した値)が表示されます。

=== アプリケーション設定値(更新前)===
名前1です。
名前2です。
1
2
=== アプリケーション設定値(更新後)===
name1を更新
name2を更新
111
2.222

2回目

更新前の設定値は、前回保存した値が表示されます。

=== アプリケーション設定値(更新前)===
name1を更新
name2を更新
111
2.222
=== アプリケーション設定値(更新後)===
name1を更新
name2を更新
111
2.222

参考

アプリケーションの設定の管理 (.NET)

https://docs.microsoft.com/ja-jp/visualstudio/ide/managing-application-settings-dotnet?view=vs-2017

dobon.net:Visual Studioでアプリケーションの設定を保存する

https://dobon.net/vb/dotnet/programing/mysettings.html

モバイルバージョンを終了