- PR -

DropDownListで先頭に半角スペースを空けて表示する方法

1
投稿者投稿内容
たけくん
ベテラン
会議室デビュー日: 2003/08/19
投稿数: 63
投稿日時: 2003-09-16 15:05
DropDownListでお客様の名前などを表示させています。
このとき、DataMember、DataSource、DataTextFieldで表示したいテーブルの列名を取ってきています。

この場合、DropDownListでは左から表示されています。例えば会社名であれば、リストボックスの一番左から[○○商事]などと表示されます。しかしながらお客様の要望では一番左を半角空けたがっており、[ ○○商事]としなくてはなりません。
対策としては
1ソースで表示項目を変える
2DB側で変える
の二点を思いつきました。
DB側で変える方法は、ビューの作成時に、
select concat (' ',CANPANEY_NAME) CANPANEY_NAME) from table_name
と行えばできます。
しかしながら.net側で行う方法がわかりません。
疑問に思ったのは、
・プロパティにDataTextFormatStringとありますが、これではできないのか。
・DataGidでは、ItemDataBound後に、Gridの項目を変更できるが、DropDownListではできないのか。

ということです。
.net側での変更方法を教えていただければと思います。
ハヤ
常連さん
会議室デビュー日: 2003/06/04
投稿数: 41
投稿日時: 2003-09-16 18:46
Windowsアプリですか?Webアプリですか?
もし、Webアプリなら、「 」をお付け下さい。
たけくん
ベテラン
会議室デビュー日: 2003/08/19
投稿数: 63
投稿日時: 2003-09-16 19:06
ハヤさん、早速の書き込みありがとうございます。
先ずアプリはWebアプリです。

「 」ですが、これは半角分空けるというものであることはしってますが、これを、Webフォーム内に書くことなんてできるんでしょうか?

-------------------------------------------------------------------------------
<asp:dropdownlist id=ddlOuCd DataMember="KV_KBHIS_OU_COP" DataSource="<%# keyBoxOpenHistoryDataSet %>" AutoPostBack="True" DataValueField="OU_CD" DataTextField='OU_COP_NAME' CssClass="controls" Width="140px" runat="server" >


DataTextFieldの'OU_COP_NAME'で表示される項目の前に' OU_COP_NAME'というイメージで半角空けたいのです。
たけくん
ベテラン
会議室デビュー日: 2003/08/19
投稿数: 63
投稿日時: 2003-09-16 19:43
方法がわかりました。
-----------------------------------------------------------------------------
<asp:dropdownlist id=ddlOuCd DataMember="KV_KBHIS_OU_COP" DataSource="<%# keyBoxOpenHistoryDataSet %>" AutoPostBack="True" DataValueField="OU_CD" DataTextField='OU_COP_NAME' CssClass="controls" Width="140px" runat="server" DataTextFormatString='&nbsp;{0:OU_COP_NAME}'>
-----------------------------------------------------------------------------
ポイントは
DataTextFormatString='&nbsp;{0:OU_COP_NAME}'
と書くことです。

Web画面のプロパティから書くより、HTML側から書いたほうがよさそうです。


Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-09-17 09:40
こんにちは。

 もう一つのTextBoxの方で、スタイルシートを利用されていますが、同じようにした方が良くないですか?

 おそらく、「テキストボックスの線が文字にかぶって見難い」ということでしょうが、そうすると今度は「右側も同じように」と要求されることが予想されます。
たけくん
ベテラン
会議室デビュー日: 2003/08/19
投稿数: 63
投稿日時: 2003-09-18 21:37
Jittaさんご指摘ありがとうございます。

--------------------------------------------------------------------------------
おそらく、「テキストボックスの線が文字にかぶって見難い」ということでしょうが、そうすると今度は「右側も同じように」と要求されることが予想されます。
--------------------------------------------------------------------------------
おっしゃるとおりです。
実は、かなり行き当たりばったりで技術的に一歩一歩進んでいるために、スタイルシート方式を別のスレッドでの書き込み時に知らなかったのです。

同様に、右側も問い割れる可能性が高いので、作り直しています。
1

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