- PR -

[APS.NET]リストボックスへの連続スペース表示について

投稿者投稿内容
Java人
ベテラン
会議室デビュー日: 2005/06/24
投稿数: 94
投稿日時: 2006-10-27 09:51
すごく初歩の質問になるのですが、

ListBoxコントロールのリストに連続スペースを
表示させたいのですが、どうしたらいいでしょうか?


アイテムの設定はサーバーサイドで行っており
以下のような手順でアイテムをListBoxコントロールに
挿入しようと考えています。

-----------------------------------------------------
ListBox1.Items.Clear()
Dim lineData As New ListItem
lineData.Text = "XXX-XXXX NNNNNNNNNN"
lineData.Value = ""
ListBox1.Items.Add(lineData)
-----------------------------------------------------
[XXX-XXXX]の後ろに半角スペース4つを表示したいんです。

以上、よろしくお願い致します。
ぷさいくろう
ぬし
会議室デビュー日: 2006/08/30
投稿数: 1034
投稿日時: 2006-10-27 10:02
正規表現で先読みと戻り読み
かずくん
ぬし
会議室デビュー日: 2003/01/08
投稿数: 759
お住まい・勤務地: 太陽系第三惑星
投稿日時: 2006-10-27 10:26
直接の回答ではありません。

ASP.NETの事わからないですが、最終的に出力されるHTMLで
コード:
<span style="margin-right:4em;">XXX-XXXX</span>NNNNNNNNNN


となれば、4文字分のスペースが開くのではないかないかと。

Java人
ベテラン
会議室デビュー日: 2005/06/24
投稿数: 94
投稿日時: 2006-10-27 10:35
引用:

ぷさいくろうさんの書き込み (2006-10-27 10:02) より:
正規表現で先読みと戻り読み



ご返信ありがとうございます。
上記の方法は今調べています。

あと、もう一つ質問なのですが、
もし、
 「XXXX-XXXX NNNNNN 9999-9999-999999」
 →[NNNNNN]の後ろに半角スペース5つを挿入
といった場合でも上記の方法は有効なのでしょうか?
NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2006-10-27 10:48
NAL-6295です。

残念ながら、標準のドロップダウンリストを利用している限り
Textに表示される内容は、エスケープ処理されて出力されてしまいますので、

コード:

<span style="margin-right:4em;">XXX-XXXX</span>NNNNNNNNNN



としても、そのまま出力されます。
もちろん、

コード:

XXX-XXXX&nbsp;&nbsp;&nbsp;&nbsp;NNNNNNNNNN



としても、そのまま出力されます。

というわけで私の場合、仕様を決定する時に、
その要件が盛り込まれないようにするか、代替案で対応しています。

[ メッセージ編集済み 編集者: NAL-6295 編集日時 2006-10-27 11:16 ]
Java人
ベテラン
会議室デビュー日: 2005/06/24
投稿数: 94
投稿日時: 2006-10-27 13:32
引用:

NAL-6295さんの書き込み (2006-10-27 10:48) より:
NAL-6295です。

残念ながら、標準のドロップダウンリストを利用している限り
Textに表示される内容は、エスケープ処理されて出力されてしまいますので、

[ メッセージ編集済み 編集者: NAL-6295 編集日時 2006-10-27 11:16 ]


標準のドロップダウンリスト以外で可能なコントロールは存在しますでしょうか?
かめたろ
ぬし
会議室デビュー日: 2003/03/20
投稿数: 255
投稿日時: 2006-10-27 13:49
コード:
lineData.Text = Server.HtmlDecode("XXX-XXXX&nbsp;&nbsp;&nbsp;&nbsp;NNNNNNNNNN")



1.1でしか試してないけど。
かめたろ
ぬし
会議室デビュー日: 2003/03/20
投稿数: 255
投稿日時: 2006-10-27 15:01
連続レス失礼します。追記したかったんですが、編集だと投稿前プレビューできず不安だったので・・・。

へんな書き方ですが、このように書くと
コード:
lineData.Text = Server.HtmlDecode("XXX-XXXX&nbsp;&nbsp;&nbsp;&nbsp;NNNNNNNNNN")



なぜかこのようにレンダリングされるので、スペースがきっちり表示されます。
コード:
<option value="">XXX-XXXX&#160;&#160;&#160;&#160;NNNNNNNNNN</option>


エンコード・デコード、スペースや&nbsp;の組み合わせを何通りか試した限りでは、上記の書き方のみ期待した通りにレンダリングされました。

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