- - PR -
[ASP.NET]Labelコントロールの表示文字列が長い場合の自動サイズ補正の抑止
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-10-05 10:47
タイトルどおりです。
ASP.NETのLabelコントロールを使って取得データの表示を行おうと考えてますが、表示文字列データが長いものは勝手に改行されてコントロールサイズがデザイン時に指定したものから自動的にサイズ補正されて表示されてしまうため予期しているデザインが崩れてしまいます。 この自動補正を抑止する方法はないでしょうか。 Labelのプロパティを見たところMultiLineプロパティなど、それっぽいものがないようなのですが、この場合はTextBoxを使うべきなんでしょうか。 [ メッセージ編集済み 編集者: てつ 編集日時 2004-10-05 10:54 ] | ||||
|
投稿日時: 2004-10-05 11:55
「自動サイズ補正」ってどの現象のことですか?指定したheightを超えて
改行していってしまう、ってことですか? それでは、文字列が長くなった場合にどう「抑止」したいですか? ・どんなに長くても1行で表示する、とか ・その部分だけスクロールバーをつける、とか あと、asp.netでなくHTMLだったらどうしてたか、を考えるといいかもしれません。 | ||||
|
投稿日時: 2004-10-05 12:11
こんにちは。
HTMLで表示された際にどうなっているのか一度確認されてみては? どうしてもLabelがいいということであれば、 1行あたりの文字数を決めてプログラムでガリガリ処理してやる必要があります。 #どちらにしろユーザスタイルシートでフォントサイズを変えられると崩れますが。 なので、TextBoxの方が楽だと思いますよ。 設定次第でLabelのように表示できますし。 ただ、TextBoxの場合1点だけ問題があったので、その際の解決先を。 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=7305&forum=7 #それか、Labelなどのコントロールサイズが変わっても全体のレイアウトが崩れないよう工夫してみるとか。 _________________ 負けないように枯れないように笑って咲く花になろう [ メッセージ編集済み 編集者: まゆりん 編集日時 2004-10-05 12:12 ] | ||||
|
投稿日時: 2004-10-05 12:11
現象の説明が不十分でした。申し訳ありません。
>指定したheightを超えて 改行していってしまう、ってことですか? はい、その現象です。 >それでは、文字列が長くなった場合にどう「抑止」したいですか? どんなに長くても1行で表示する、の方法で抑止したいと考えております。 HTMLだったら、ですか。 文字を切るくらいしか思いつきません…。 すいません。。。 | ||||
|
投稿日時: 2004-10-05 12:19
おっと失礼、widthの方かと思い込んで書いていました。
改行したくないということですね。 Tableならできそうですね。 _________________ まゆりん @ わんくま同盟 Blog る。 | ||||
|
投稿日時: 2004-10-05 12:25
<pre>とか。
テーブルの<td nowrap>とか。
| ||||
|
投稿日時: 2004-10-05 13:05
あとは、<nobr></nobr>で囲ればその部分は改行されなくなりますね。
どの方法もwidthどころかブラウザの幅を超えても1行で表示されますが。 [追記] 改行したくないけど、長い場合はどこかで区切りたい、という場合は やはりTextBoxを細工するか、あとはdivで細工する方法あたりですかね。 [ メッセージ編集済み 編集者: べる 編集日時 2004-10-05 13:34 ] | ||||
|
投稿日時: 2004-10-05 21:03
みなさんありがとうございました。
結局TextBoxを使うことにしました。 |
1