掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
重複した項目を持つコンボボックスで、指定行を選択状態にするには? (ID:116989)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>なんか、微妙なコンボボックスだなぁ うん。ボクもそう思う。 DropDown SelectedIndexChanged SelectedValueChanged イベントで 何が変わるのか調べてみたけど SelectedIndex とドロップダウン リストの選択項目は関係ないみたい。で、ドロップダウンで1項目目が 選択されている状態でも SelectedIndexChanged イベントは発生せず、 ドロップダウンリストを閉じた時点で、その時選択されている項目に SelectedIndex が変更される。…ただしこれは普通にユーザがリストを 選択した時と同じ動作です。 コンボボックスには FindString メソッドってのがあったりしますが、 どうも SelectedIndex でなく Text を基準に動作させているみたい ですね。 という事は、コンボボックスのリストボックスを表示してリストを選択 する内部処理に割り込まないといけないようです。で、そのあたりは ボクが調べた範囲では見つかりませんでした。 http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200410/04100021.txt ↑の時も調べたのですが、リストボックスを操作する部分が公開されて 無いかもしれません。このあたりの操作をオーバーロードできるような 情報があればどうにかなるかもしれません。 >コンボボックスの項目を重複さないで、ラベルの方をリストボックスに >するとゆう方法もありますが、これだとユーザーの操作を1つ増やしてしまいます。 との事ですが、これはコンボボックスを見ただけでは何番目が選択され ているか分からないという事ですよね?。で、ドロップダウンリストを 表示しないと分からないです。この質問が解決できたとして、それでも 操作を増やしているのでは? エクセルなんかで新規ブックを追加し続けると連番が付きます。同じ項目 をコンボボックスに入れるなら連番をつけるべきなんじゃないでしょうか?。 [VB.NET]のコンボボックスには、Item として表示する文字列だけでなく 独自のオブジェクト(構造体とか)を追加できます。ToString プロパティを オーバーロードすれば表示文字列を操作できます。SelectedItem を利用 すれば色々な情報を設定し、取り出す事ができます。このあたりで調整する のが建設的でしょう。 あとは自作するとかになりますね。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.