アドインオプションページにいくつかの値を設定するOutlookアドインがあります。そのような設定の値に初期化されているプロパティは、ありますOutlookアドインの設定と自動実装のプロパティ
public string Prop1 { get; } = Properties.Settings.Default.Setting1;
Properties.Settings.Default.Setting1
の値がアドインオプションページから実行時に変更された場合私の質問は、プロパティは変更が反映されますか?
私はそれを初期化しているプロパティの値を保持する隠れたバッキングフィールドを生成することを理解しています。
ので、プロパティは
public string Prop1
{
get {
return Properties.Settings.Default.Setting1;
}
}
と等価ではありませんが、Prop1
がProperties.Settings.Default.Setting1
の変更された値を反映しないだろうことを意味する
public string Prop1
{
get {
return hidden_backing_field;
}
}
です。
このようなケースはどうすれば処理できますか?オプションが変更されるたびにプロパティを再設定する必要がありますか?
自動実装されたプロパティで私の混乱を解消するのを手伝ってくれてありがとうございます。
これは最善の方法です。自動実装されたプロパティは、ここで使用する正しいものではないと思います。 – shenk