- - PR -
コンボボックスで選択前のイベントを拾ってキャンセル操作をしたい
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-03-03 18:56
こんにちは
コンボボックスでSelectedIndexChangedが発生する前に状況によりキャンセルをしたいのですが、 Clickイベントではクリックしたタイミングで現在の値を取得できますがF4キーが押された場合や、下矢印等のイベントには反応してくれません。 よろしくお願いします。 |
|
投稿日時: 2005-03-03 19:02
KeyDownイベントを使ってみるとか。
_________________ まゆりん @ わんくま同盟 Blog る。 |
|
投稿日時: 2005-03-03 19:33
ありがとうございました。
KeyDownやClickイベントの合わせ技しかないのですね。 変更前に発生するイベント等はないのですね。 |
|
投稿日時: 2005-03-03 19:44
あまりスマートではないのですが以下のようにしました。
コンボボックスはSelectedIndexChanged以外に値変更前のイベントが必要だなと思いました。 int mcbval= -1; private void cb_SelectedIndexChanged(object sender, System.EventArgs e) { if(mcbval > -1 ) { this.cb.SelectedValue = mcbval; mcbval = -1; return ; } private void cb_Click(object sender, System.EventArgs e) { mcbval = (int)this.cb.SelectedValue; this.cb.SelectedValue = mcbval; } private void cb_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e) { mcbval = (int)this.cb.SelectedValue; this.cb.SelectedValue = mcbval; } |
1