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

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

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

Re[2]: DatagridViewの余白部分すべてに行を表示


(過去ログ 77 を表示中)

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

■45327 / inTopicNo.1)  DatagridViewの余白部分すべてに行を表示
  
□投稿者/ hs (174回)-(2010/01/10(Sun) 12:35:15)

分類:[VB.NET/VB2005 以降] 

VS2008 VB

いつもお世話になっております。

よくDatagridViewのコントロールを使用しているアプリケーションでデータが数行しかない場合でも、
余白部分(Background)すべてに行だけが表示されているのを目にします。

さらにこの空白行部分をクリックした場合には、もちろんフォーカスは取得しないですし、
datagridViewの表示部分にデータが納まっていればスクロールバーも表示されることはありません。

このように、フォームがリサイズされDatagridViewのサイズが変更された場合でも、常に空白部分すべてに
行を表示させたいのですが、どのような考え方・方法になるのでしょうか?

よろしくお願いします。
引用返信 編集キー/
■45335 / inTopicNo.2)  Re[1]: DatagridViewの余白部分すべてに行を表示
□投稿者/ 魔界の仮面弁士 (1446回)-(2010/01/10(Sun) 14:37:56)
No45327 (hs さん) に返信
> よくDatagridViewのコントロールを使用しているアプリケーションでデータが数行しかない場合でも、
> 余白部分(Background)すべてに行だけが表示されているのを目にします。

よく目にするとの事ですが、具体的には何というアプリケーションでしょうか?


> 常に空白部分すべてに行を表示させたいのですが、どのような考え方・方法になるのでしょうか?

DataGridView ではなく、「View = Details, GridLines = True」に設定した
ListView を使ってみるとか。
引用返信 編集キー/
■45338 / inTopicNo.3)  Re[1]: DatagridViewの余白部分すべてに行を表示
□投稿者/ やじゅ (1444回)-(2010/01/10(Sun) 15:50:56)
やじゅ さんの Web サイト
2010/01/10(Sun) 16:07:03 編集(投稿者)

No45327 (hs さん) に返信
> このように、フォームがリサイズされDatagridViewのサイズが変更された場合でも、常に空白部分すべてに
> 行を表示させたいのですが、どのような考え方・方法になるのでしょうか?

単純にダミー行を埋まるまで追加する方法で実現してますね。

方法例
バインドをどうやっているかにもよりますが、まずデータを抽出してきて、そこで抽出されたデータの件数が
少ないなら抽出したデータに空データを必要な数追加し、それからバインドを行うという方法です。
※フォームのリサイズによって、表示件数を調整する必要があります。


後は、空行だったらフォーカスしないようにするかどうかは、好みかな。

DataGridView で、指定の列にフォーカスが行かない方法を具体的に教えてください
http://social.msdn.microsoft.com/Forums/ja-JP/csharpexpressja/thread/b144892a-e05d-4b96-a1f5-3d4b32cd76ce
DataGridViewのセルにフォーカス枠が表示されないようにする
http://dobon.net/vb/dotnet/datagridview/noforusframe.html
引用返信 編集キー/
■45342 / inTopicNo.4)  Re[2]: DatagridViewの余白部分すべてに行を表示
□投稿者/ hs (176回)-(2010/01/10(Sun) 16:52:48)
No45335 (魔界の仮面弁士 さん) に返信

>> よくDatagridViewのコントロールを使用しているアプリケーションでデータが数行しかない場合でも、
>> 余白部分(Background)すべてに行だけが表示されているのを目にします。

>よく目にするとの事ですが、具体的には何というアプリケーションでしょうか?

申し訳ありません。勘違いをしていました。ListViewを使用しているようでした。
私自身、現在までListViewを使用したことがなく、完全にDatagridViewだと思い込んでいました。

No45338 (やじゅ さん) に返信

> 単純にダミー行を埋まるまで追加する方法で実現してますね。

やはりそうなりますよね。
スクロールバーを表示させないように表示行の制御やRowCount取得時が面倒そうだったのでもっと簡単な方法はないかと思い
今回投稿させていただきました。
自分なりの見た目のこだわりで、お客から言われたものではないので今回は諦めようと思います。
せっかく回答をいただいたのに申し訳ありませんでした。

また何かあったときはよろしくお願いします。





解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -