ソリューション
|
|-StartUpプロジェクト(Windowsアプリケーション)
| |-参照設定:Aプロジェクト、共通プロジェクト
| |--app.config
| |--Main.vb(Sub Main)
|
|-共通プロジェクト(クラスライブラリ)
| |-SettingReader.vb
|
|-Aプロジェクト(クラスライブラリ)
| |-参照設定:共通プロジェクト
| |-ユーザー設定変更Form
| |-アプリケーション設定表示Form
Aプロジェクトにユーザー設定変更Formとアプリケーション設定表示Formを追加します。
ユーザ設定変更Formにはフォーム背景色変更ボタン、保存ボタン、終了ボタンを用意します。
アプリケーション設定表示フォームにはProviderName表示用テキストボックス、ConnectionString表示用テキストボックス、終了ボタンを用意します。
ユーザー設定変更Formのコード
Public Class UserSettingSample
'FormLoadイベント
Private Sub UserSetting_Load(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles Me.Load
'ユーザ設定ファイルよりフォーム背景色を設定します。
Me.BackColor = 共通プロジェクト.SettingReader.FormBackColor
End Sub
'背景色選択ボタンクリックイベント
Private Sub cmdColor_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles cmdColor.Click
Using cd As New System.Windows.Forms.ColorDialog
cd.Color = Me.BackColor
If cd.ShowDialog = Windows.Forms.DialogResult.OK Then
'フォームの背景色を選択色に変更します。
Me.BackColor = cd.Color
End If
End Using
End Sub
'保存ボタンクリックイベント
Private Sub cmdEntry_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles cmdEntry.Click
'ユーザ設定ファイルにフォームの背景色を設定します。
共通プロジェクト.SettingReader.FormBackColor = Me.BackColor
'設定ファイルの変更を保存します。
共通プロジェクト.SettingReader.SettingInstance.Save()
End Sub
'終了ボタンクリックイベント
Private Sub cmdExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdExit.Click
Me.Close()
End Sub
End Class
アプリケーション設定表示Formのコード
Public Class AppSettingSample
'Loadイベントです。
Private Sub AppSettingSample_Load(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles Me.Load
'アプリケーション設定ファイルよりProviderNameを表示します。
Me.txtProviderName.Text = 共通プロジェクト.SettingReader.ProviderName
'アプリケーション設定ファイルよりConnectionStringを表示します。
Me.txtConnectionString.Text = 共通プロジェクト.SettingReader.ConnectionString
End Sub
'終了ボタンクリックイベントです。
Private Sub cmdExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles cmdExit.Click
Me.Close()
End Sub
End Class
ユーザ設定画面を起動し、フォームの背景色を変更し保存します。アプリケーションを終了し再度実行すると、先ほど保存した背景色でフォームが表示されます。別ユーザでログインした場合は、先ほど保存した背景色ではなく設定ファイルのデフォルト値で表示されます。