0

「None」項目を含む CheckedComboBox があり、選択すると他のチェックボックスの選択を解除し、他のチェックボックスを選択すると「None」の選択を解除する必要があります。

EditValueChanging イベントでこれを達成しようとしていて、部分的に成功しました。私はイベントを傍受し、e.NewValueそれに応じて設定していました。
基になる値が設定されていますが、コントロールによって表示されるテキストにはまだ古い値が表示されています。

コントロールをもう一度クリックしてからクリックして戻すと、表示が更新されます....

Refresh()、Update()、Invalidate() を呼び出してみました。私は何が欠けていますか?

ありがとう、

4

1 に答える 1

0

擬似コード:

void combo_onSelectedIndexchanged 
{
   if (combo.SelectedItem == "None") UncheckAllBoxes();
}

void check_onCheckedChanged 
{
   if (check.checked && combo.selectedItem == "None") combo.SelectedItem = 0;
}
于 2013-07-22T21:35:24.153 に答える