.NET TIPS DataGridコントロールで列の幅を指定するには?デジタルアドバンテージ2003/12/12 |
|
|
DataGridコントロールでデータを表示するとき、文字列が列からはみ出してしまい、文字列の一部分しか見えていなかったり、余白が空きすぎて見栄えが良くなかったりする場合がある。
DataGridコントロールによるデータの一覧表示 | ||||||
DataGridコントロールで、文字列が列からはみ出したり、列に余白があったりするので、データが見づらい場合がある。 | ||||||
|
このような場合、DataGridコントロールにあらかじめ最適な列幅を指定しておくとよい。
列幅を指定したDataGridコントロール | ||||||
文字列が列内に適切に収まっていおり、無駄な余白もないので、データが見やすい。 | ||||||
|
上の図のように、DataGridコントロールで、列の幅を指定するには、DataGridTextBoxColumnクラス(System.Windows.Forms名前空間)のWidthプロパティにピクセル単位で幅を設定する。
なお、この列幅をDataGridコントロールに適用するには、まず、列の幅を指定したDataGridTextBoxColumnオブジェクトを、DataGridTableStyleクラスのオブジェクトのGridColumnStylesプロパティにAddメソッドを使って追加する。このGridColumnStylesプロパティは、DataGridコントロールの列のスタイルを指定するためのコレクションである。次に、そのDataGridTableStyleオブジェクトを、DataGridコントロールのテーブル・スタイルのコレクションであるTableStylesプロパティにAddメソッドにより追加する。次に具体的なコードを示す。
|
|
DataGridコントロールの列(Column)の幅を指定するC#のプログラム | |
なお今回のTIPSは、データ内の文字列の長さが予測可能な場合には有効だが、文字列の長さが不定な場合はあらかじめ幅を決定できないので、あまり有効ではない。そのような場合、Graphicsクラス(System.Drawing名前空間)のMeasureStringメソッドなどを使って、データ内の文字列の最大幅を取得し、列幅を動的に決定する必要があるだろう。
カテゴリ:Windowsフォーム 処理対象:DataGridコントロール 使用ライブラリ:DataGridコントロール 使用ライブラリ:DataGridTextBoxColumnクラス(System.Windows.Forms名前空間) 使用ライブラリ:DataGridTableStyleクラス(System.Windows.Forms名前空間) 使用ライブラリ:Graphicsクラス(System.Drawing名前空間) |
「.NET TIPS」 |
Insider.NET フォーラム 新着記事
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|