C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: データを行別に違ったコントロールで表示させたい


(過去ログ 54 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■30332 / inTopicNo.1)  データを行別に違ったコントロールで表示させたい
  
□投稿者/ nefy (3回)-(2008/12/21(Sun) 18:10:07)

分類:[.NET 全般] 

先ほども質問させていただいたnefyです。
現在はVB.Net2008で作成しています。


DataGridのように行単位でデータを表示させたいのですが、今回はちょっと変わった表示なので困っています。

表示させるコントロールのパターンは数種類あり
パターン1の場合その行に配置するコントロールは、カラム1~5にテキストボックスを3つづつ
パターン2の場合は、カラム1にラベルをひとつだけ(できれば1~5を結合(マージ)させて表示したい)

このようにパターンによって表示させたいデータが異なるのですが
標準的なコントロールDataGridViewやDataRepeaterでは無理でしょうか?
また、どのようなコントロールを使用すれば可能でしょうか?(やはり自作でしょうか。。。)

よろしくお願いします。
引用返信 編集キー/
■30339 / inTopicNo.2)  Re[1]: データを行別に違ったコントロールで表示させたい
□投稿者/ カドルドエグ (67回)-(2008/12/22(Mon) 09:27:57)
No30332 (nefy さん) に返信
> 表示させるコントロールのパターンは数種類あり
> パターン1の場合その行に配置するコントロールは、カラム1~5にテキストボックスを3つづつ
> パターン2の場合は、カラム1にラベルをひとつだけ(できれば1~5を結合(マージ)させて表示したい)
>
> このようにパターンによって表示させたいデータが異なるのですが

少々やっかいではありますが、DataGridViewで以下のような方法を考えてみました。
飽くまで「方法のひとつ」ですので、もっとシンプルでわかりやすい方法がきっとあります^^;

もらってきたデータのパターン(区分か何かでしょうか)を見て、
列またはセルがつくられるタイミング
(MSDN:DataGridViewイベント↓を参照してください。
http://msdn.microsoft.com/ja-jp/library/system.windows.forms.datagridview_events(VS.80).aspx)
でその都度テキストボックス等を入れていけばよいかなと。

ただ、「ラベル」って要するに読み取り専用であればよいのなら、
テキストボックスを置いて該当項目だけReadOnlyにしてしまった方が使うコントロールの種類が少なくなり
より開発しやすくなるのではないかと思います。

引用返信 編集キー/
■30345 / inTopicNo.3)  Re[1]: データを行別に違ったコントロールで表示させたい
□投稿者/ .SHO (498回)-(2008/12/22(Mon) 10:15:43)
No30332 (nefy さん) に返信

行単位で表示するためだけにDataGridを選択したのなら、自作しちゃった方が
すっきりするような感じがします。

パターン1のクラスとパターン2のクラス作って、コンストラクタでY座標与えて
必要なだけnewすればいいような。。。
引用返信 編集キー/
■30386 / inTopicNo.4)  Re[2]: データを行別に違ったコントロールで表示させたい
□投稿者/ nefy (4回)-(2008/12/22(Mon) 17:48:19)
お返事遅くなりました。

カドルドエグさん
.SHOさん
回答ありがとうございます。

>もらってきたデータのパターン(区分か何かでしょうか)を見て、
>列またはセルがつくられるタイミング
色々と調べないといけないことが沢山ありそうです。。

>パターン1のクラスとパターン2のクラス作って、コンストラクタでY座標与えて
>必要なだけnewすればいいような。。。
確かにそうですねぇ・・・

もう少し勉強してからまた書き込みます。
すみません。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -