- PR -

ASP(WEB)ではなくてDataGridで2行表示は無理?

1
投稿者投稿内容
nana
会議室デビュー日: 2004/06/29
投稿数: 17
投稿日時: 2004-11-10 15:32
初めて投稿いたします。

Visual Basic .NETで
DataGridを使用しているのですが
そこで列の二行表示(列内改行)を実現したいと考えています。
ASPではない通常のVBのみでの実行は可能でしょうか。

<関連サイト?!>
http://dobon.net/vb/dotnet/datagrid/wrapwordtextcolumn.html
# DataGridTextBoxColumnクラスを継承し、
# 新しいクラスDataGridTextBoxColumnExを作る。
# DataGridTextBoxColumnExクラスを使用するには、
# 文字列を折り返して表示したい列の列スタイルに
# DataGridTextBoxColumnExオブジェクトを設定する。

ネット上でそれらしい説明(↑)を発見して
DataGridTextBoxColumnExクラスをそのまま持ってきて
以下のような設定をしたのですが、表示は全く変わりませんでした。

colStyle(i) = New DataGridTextBoxColumnEx ←ここを変更
colStyle(i).MappingName = "<マッピング名>"
colStyle(i).HeaderText = "<ヘッダー名>"
colStyle(i).Width = 440
colStyle(i).ReadOnly = True
colStyle(i).Alignment = HorizontalAlignment.Center
style.GridColumnStyles.Add(colStyle(i))

やはり私がトーシロ対応しかできていないのでしょうか・・・。

もし、Visual Basic .NETで
DataGrid二行表示を実現できた方がいらっしゃいましたら
そのときの方法など、ご教授ください。
nana
会議室デビュー日: 2004/06/29
投稿数: 17
投稿日時: 2004-11-10 17:04
すみません。自己レスです。
実現できました。

というよりも
http://dobon.net/vb/dotnet/datagrid/wrapwordtextcolumn.html
に載っていたDataGridTextBoxColumnExクラスで
実現可能でした。

colStyle(i) = New DataGridTextBoxColumnEx
としてもかわって見えなかったのは
行が依然として一行分の高さしか表示していなかったからでした。

データ二行分表示ができるように、styleのほうに
style.PreferredRowHeight = 40
を設定したところ、幅(width)で改行して表示されていることが
判明しました。

お騒がせいたしました。

Visual Basic .NETで2行表示されたい方
上記のホームページからDataGridTextBoxColumnExをもってきて
参照してみてください。

widthで折り返しての2行表示ができますよ。
nana
会議室デビュー日: 2004/06/29
投稿数: 17
投稿日時: 2004-11-10 17:22
>データ二行分表示ができるように、styleのほうに
>style.PreferredRowHeight = 40
>を設定したところ、

styleのほうに、とはTableStyleのことでした。
表現がたらずすみません。


Dim style As DataGridTableStyle
  ・・・
   style.PreferredRowHeight = 40
  ・・・

Dim colStyle(i) As DataGridColumnStyle
  ・・・
colStyle(i) = New DataGridTextBoxColumnEx
  ・・・



こんな感じで
DataGrid内2行表示を実現させています。
1

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