- PR -

DropDownListの表示について

投稿者投稿内容
しま
会議室デビュー日: 2005/10/01
投稿数: 6
投稿日時: 2005-10-01 09:04
はじめまして。.NETの開発を最近始めたばかりです。
過去の記事も検索してみましたが無いようなので、質問させていただきます。
あるイベント例えばイメージをクリックした時対応する図や表などを表示したいと思い、
設計時に表示をしないようにテーブルやイメージを貼り付けてクリックしたタイミングで
表示するようにしました。
しかし、そのままでは、そのテーブルやイメージが表示されない時に空間が出来てしまいます。
詰めて表示したいと思い、そこにテーブル非表示時の空間位置にDropDownListを置くと(重ねて配置)テーブルやイメージの上にDropDownListが上に表示されてしまいます。設計時はそれでも良いのですが、テーブル表示をしてもDropDownListが上に重なって表示されてしまいます。
DropDownListのスタイルにZ-indexを設定してもテーブルのZ-indexを大きくしても、変化が
ありません。positionはabsolute設定しました。
どの様にすれば、DropDownListの表示順序を下げることが出来るのでしょうか?

WEB C#で開発中です。
cedar
会議室デビュー日: 2005/09/13
投稿数: 10
投稿日時: 2005-10-01 10:34
1、表とか見えているとき、見えてないときで条件わけして
位置を記述するプログラムを書く。

2、図とか、表とか重なりたくない物を、
<asp:Table><asp:Tablerow><asp:TableCell>を用いてそれぞれ囲ってやる。
そして、テーブルの中身が表示していないときはwidth(height)を0に設定してやれば
いいと思います。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-10-01 10:52
こんにちは、じゃんぬ です。
アクセシビリティなどの観点から少し意見を...

引用:

しまさんの書き込み (2005-10-01 09:04) より:

しかし、そのままでは、そのテーブルやイメージが表示されない時に空間が出来てしまいます。


アクセシビリティを考えるとそれで良いのでは? と思います。
Windows のイメージ ビューアなどもイメージが選択されていない時は、枠だけの表示です。
これがもし動的に、ウィンドウの大きさが変わったら戸惑います。

引用:

詰めて表示したいと思い、そこにテーブル非表示時の空間位置にDropDownListを置くと
(重ねて配置)テーブルやイメージの上にDropDownListが上に表示されてしまいます。


そもそも、これは postion : absolute; でやってませんか?
詰めるなら、absolute を止めるだけで済みそうですが...

# absolute で表示すると、フォント サイズを変更するとズレる場合が多いからヤダ...

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
しま
会議室デビュー日: 2005/10/01
投稿数: 6
投稿日時: 2005-10-01 12:42
早々の回答有難うございます。
ですが、質問の記述が下手でこちらの質問内容が正確に伝わっていなかったようなので、補足させていただきます。WEBのパーツは一画面に多数配置しています。
イメージのボタンを押したらその項目の説明や表を表示しますが、各表示パーツの位置は変更したくありません。ですので一時的にパーツの上に重ねて表示します。DropDownListのボタンを押すとリストが表示されますが、それが、イメージや表であるような雰囲気を想像するとわかりやすいかと思います。
概ねこれで実現できているのですが、重なるパーツがDropDownListの場合だけ重ねて表示する表やイメージの上に表示されてしまい、混ざった変な表示になるのです。LabelやTextBoxなどZ-INDEXの順序通りに制御できるのですが、DropDownListは全く制御できないのです。
要はイメージや表の領域下にDropDownListを重ねてDropDownListの表示を消したいのですが、どのようにすれば消せるのでしょうか?
DropDownListを非表示にするというのは方法がない場合の最終手段にしたいです。レイアウト変更に耐えられませんから。
度々で済みませんが、お教えください。
なおこ(・∀・)
大ベテラン
会議室デビュー日: 2004/04/08
投稿数: 174
お住まい・勤務地: 東京都
投稿日時: 2005-10-01 13:34
お世話になります。

引用:

しまさんの書き込み (2005-10-01 12:42) より:

要はイメージや表の領域下にDropDownListを重ねてDropDownListの表示を消したいのですが、どのようにすれば消せるのでしょうか?
DropDownListを非表示にするというのは方法がない場合の最終手段にしたいです。レイアウト変更に耐えられませんから。



回避策となるか、試していないので自信がないですが、
Panelの上にDropDownListを乗っけてしまうとか…どうでしょうか。
しま
会議室デビュー日: 2005/10/01
投稿数: 6
投稿日時: 2005-10-01 13:58
なおこ様、回答、有難うございます。
Panelとはどの様に使用すれば良いのでしょう?
HelpではWindowsフォームのパーツの様に見えますが・・・・。
Webでも使用できるのでしょうか?
済みません何分、まだよく判っていないものですから。
具体例か参考になるURLでもお教えください。

[ メッセージ編集済み 編集者: しま 編集日時 2005-10-01 13:59 ]
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-10-01 14:06
引用:

しまさんの書き込み (2005-10-01 13:58) より:

具体例か参考になるURLでもお教えください。


Panel クラス

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
しま
会議室デビュー日: 2005/10/01
投稿数: 6
投稿日時: 2005-10-01 14:11
Webパーツもあるのですね。済みません。
よく調べてから投稿するようにします。
試して見ます。

スキルアップ/キャリアアップ(JOB@IT)