CheckBox
チェックに関連するコードを実行せずにチェックする方法はありますか? 視覚的な外観のためだけに。
編集:
private void normalCheck_Checked(object sender, RoutedEventArgs e)
{
normal();
}
normalCheckBox.IsChecked=true;
イベントを発生させずに設定したいと想像してください。それは可能ですか?
1 つの方法は、イベント ハンドラーをデタッチし、IsChecked
プロパティを設定してから、再度アタッチすることです。
myCheckbox.Checked -= myCheckbox_Checked;
myCheckbox.IsChecked = true;
myCheckbox.Checked += myCheckbox_Checked;
Click
代わりにイベントをChecked
使用して、以下のようにチェックボックスの状態を使用できます。
private void normalCheck_Click(object sender, RoutedEventArgs e)
{
if (normalCheck.IsChecked ?? false) { normal(); }
}
次に、このイベントは を使用して発生しませんnormalCheck.IsChecked = true;
。クリックするだけで上がります。
注: null の可能性がある型を返す??
ため、null 合体演算子 ( ) が必要です。IsChecked
bool?
「_Checked」イベントを発生させずにチェック済みステータスを変更することを参照している場合は、イベント ハンドラーをパラメーターでオーバーライドして、イベントをスキップするかどうかを伝える必要があります。
関連する回答:イベントを発生させずにチェックボックスの値を変更する