- - PR -
リストボックスの選択行について
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2003-11-06 13:23
リストボックスの選択行について質問です。
VB.NETでWinアプリです。 ListBoxのSelectionModeプロパティをMultiSimpleに設定し、 そのListBoxのSelectedIndexChangedイベントにて、その時 選択された行を取得したいのですが、どのようにすれば可能 でしょうか? SelectedIndexプロパティだと、選択している全ての行の先頭行を 取得してくるようなので使えませんでした。 よろしくお願いします。 | ||||
|
投稿日時: 2003-11-06 14:47
こんにちわ。諸農です。
ListBox.SelectedItems はどうでしょうか? インデックス番号のリストなら SelectedIndices プロパティでしょうか。 ではでは(^^)/ _________________ 諸農和岳 Powered by Turbo Delphi & Microsoft Visual Studio 2005 十兵衛@わんくま同盟 http://blogs.wankuma.com/jubei/ | ||||
|
投稿日時: 2003-11-06 14:58
諸農さん、回答ありがとうございます。
残念ながら、SelectedItemsやSelectedIndicesだと、全ての選択行を取得して しまうので、今回は使えないんです。 その時クリックされたインデックスのみ取得したいんです。 最悪の場合、この手は使いたくはないんですが、SelectedIndicesを退避させ ておいて、SelectedIndexChangedイベント発生時のSelectedIndicesと比較 して、選択された行を取得するしかないかなと思っています。 こういった方法を使わず、他に良い方法が無いか質問させて頂きました。 | ||||
|
投稿日時: 2003-11-06 17:41
SelectedIndexChangeイベントではなく、MouseUpイベントで
カーソルの位置をひろって、IndexFromPointメソッドで インデックスを取得する、という手が使えるかな? でも、なんでClickイベントはパブリックイベントじゃ ないんだろ。。。 | ||||
|
投稿日時: 2003-11-06 18:02
小野さん、ありがとうございます。
あっ、そういう手が使えますね。 ただ、キーボードのスペースで選択された場合に、これだと対応できないので... キーボードの矢印キーで行を移動させると、薄くカーソルが表示されるので、 その位置が分かればいいのですが... |
1