7

私はコンボボックス(winform)を持っています。このコンボ ボックスには、いくつかの項目 (例: 1、2、3、4) が​​あります。

さて、このコンボ内で選択を変更するとき、古いインデックス新しいインデックスを知りたいです。

どうすればこれを入手できますか?

回避したい可能なアプローチ

  1. enter イベントを追加し、現在のインデックスをキャッシュしてから、選択インデックスの変更時に新しいインデックスを取得します。

  2. イベントの送信者によって受信された選択されたテキスト/選択された項目のプロパティを使用します。

私が理想的に欲しいもの:

  1. 受信したイベント引数では、次のようなものが必要です。

    e.OldIndex; e.newIndex;

    現在、SelectionIndex Change イベントで受け取るイベント引数はまったく役に立ちません。

  2. 複数のイベントを使用したくありません。

  3. C# がこれを提供しない場合、古いインデックスと新しいインデックスをイベント引数として渡すイベントを作成できますか?

4

5 に答える 5

6

これは重複の可能性があるようです

ComboBox SelectedIndexChangedイベント:以前に選択されたインデックスを取得する方法は?

何も組み込まれていません。このイベントをリッスンし、クラス変数を追跡する必要があります。

しかし、この回答は、コンボボックスを拡張して以前のインデックスを追跡するための賢明な方法を示唆しているようです https://stackoverflow.com/a/425323/81053

于 2012-08-23T08:18:39.077 に答える