- - PR -
ComboBoxのドロップダウンリストの選択
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-11-28 15:58
C#.NET(2003)で開発しています。
ComboBoxのDropDownStyleプロパティはDropDownListです。 ドロップダウンリストに表示するItemは、 選択可能なものと選択不可のものがあり、 選択不可の場合には、ドロップダウンリストを閉じない(確定できない) ようにしたいのですが、どのようにすれば実現できるのかご教授ください。 (選択可能、選択不可はDataBingings.Tagプロパティに持っているとします) 宜しくお願いいたします. | ||||
|
投稿日時: 2005-11-28 16:31
回答ではありませんが、選択不可の項目が、リストとして表示されることに違和感を感じます。
| ||||
|
投稿日時: 2005-11-28 16:33
まず、選択不可のものを抽出して SelectedIndexChanged と Leave (Validating) イベントで判断。 選択不可であれば、Focus を強制的に ComboBox にセットし、 DroppedDown プロパティを true にすることで出来ますが、 最終チェックで一任した方がアクセシブルだと思います。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2005-11-28 17:51
burton999様>
確かに仰るとおりですが、以下のような風にしたいのです。 (例) 北海道 札幌市 函館市 青森 青森市 ・・・ という感じに都道府県は表示のみで選択不可にしたいのです。 (都道府県を表示しないと分かりづらいので) じゃんぬねっと様> 回答ありがとうございます。 この方法を試してみたいと思います。 | ||||
|
投稿日時: 2005-11-28 20:59
全部で、どれくらいの量のリストになるのでしょう?
場合によっては、「県」と「市」を分けた方がいいと思いますが、いかがでしょう? http://www.codeproject.com/cs/combobox/multicolumncombo.asp こいつを利用するのも、おもしろいかも。 ___________________________________________________________________ □ written by Jitta on 2005/11/28 □ Microsoft MVP :Visual Developer ASP/ASP.NET Oct.2005-Sept.2006 _________________ | ||||
|
投稿日時: 2005-11-29 10:27
Jitta様
実際は都道府県と市といったものではなく、件数もそれほど多くありません。 なので、コンボボックスを複数には分けたくないのです。 ------------------ じゃんぬねっと様の教えていただいた方法でチャレンジしてみました。 まず、 SelectedIndexChangedのイベント内で、選択可能か選択不可かを判断し、 選択不可の場合は、DroppedDownプロパティをTrueにしてみました。 結果は、一旦ドロップリストを閉じてから開くので、選択したものに初期カーソルが 行かなく、 それを選択したものに戻すといったことを行おうとしてもうまくいきませんでした。 (↑選択されたSelectedIndexを再セットしてみました) ドロップダウンリストが閉じる前に、選択されたものが選択不可と判定するには、 SelectionChangeCommitedイベントでできますが、このイベントに来たときは 既に選択確定されている為、DroppedDownプロパティをTrueにしてもドロップリストは 閉じてしまいます。 なんとか、ドロップダウンを閉じる前にその選択を無効にするようなことはできない ものでしょうか? |
1