2011-01-23 20 views
0

現在選択されているバインドされたアイテムを削除した後、コンボボックスを何も選択しない(つまり、SelectedIndex = -1)ことができます。現在選択されているアイテムが削除された後、次のアイテムがどのように選択されるのか気に入らない。これにより、間違った値が選択された場合に問題が発生する可能性があります。継承されたコンボボックスに直接この動作を追加する方法がある場合は理想的でしょう。現在選択されているバウンドコンボボックスアイテムを削除し、何も選択しないでください。

+2

はるかに簡単な解決策があります。問題を逆転させて、現在選択されているバインドされた項目を削除する前に 'SelectedIndex = -1' *をセットするだけです。 –

+0

私はこれを試しましたが、最後のアイテムが現在選択されているアイテムである場合は機能しません。最後の項目の次の項目が選択されて終了します。 –

+0

ComboBoxとそのイベントに関するコードを投稿してみてください。 – VoodooChild

答えて

0

、回避策は実行することです。

SelectedIndex = 0 
SelectedIndex = -1 
0

また、コメントで@Cody Greyによる提案も好きです。しかし、私はこれについて考えて、あなたがこれを行うことができるかもしれない別の方法は、コンボボックスからアイテムを削除すると発生するイベントを添付することです。そのイベントハンドラにSelectedIndex = -1を設定します。今、私はそのような容易に利用可能なイベントがあるかどうかわからないので、それを調べる価値があるかもしれません。コーディグレイによって投稿既知のバグのリンクで

+0

選択したアイテムが変更されたときに、他のイベントが発生していたとします。現在選択されているデータバインドされた項目が削除された場合、選択項目はリスト内の次のデータバインド項目にロールアップまたはロールアウトされ、望ましくないものが発生する可能性があります。もしそうでなければ、質問する理由はありません。項目を削除するコードと 'SelectedIndex = -1'を設定するコードの2行を書くだけです。 –

関連する問題