DataGridView で行毎や列毎に高さや幅を設定する - Visual C# プログラミング

PROGRAM


DataGridView で行毎や列毎に高さや幅を設定する

DataGridView では、表内の行や列のそれぞれに、行の高さや列の幅を指定することができるようになっています。

たとえば "grid" という名前の DataGridView があったとして、その幅や高さを変更してみます。今回は話を簡単にするため、全ての行の高さを 100 に、全ての列の幅を 300 に設定していますが、必要に応じて個別に指定することが可能です。

// 行や幅をプログラムで設定するには、それらの自動設定が None になっている必要があるようです。

grid.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;

grid.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None;

 

 

// ここでは DataGridView の全ての行に高さを設定しています。

for (Int32 row_index = 0; row_index < grid.Rows.Count; row_index++)

{

grid.Rows[row_index].Height = 100;

}

 

// ここでは DataGridView の全ての列に幅を設定しています。

for (Int32 col_index = 0; col_index < grid.Columns.Count; col_index++)

{

grid.Columns[col_index].Width = 300;

}

これで、DataGridView の行の高さや列の幅を、ひとつひとつ設定することができます。

このとき、上記の例の中でも記しましたが、幅や高さの自動設定(AutoSizeColumnsMode, AutoSizeRowsMode)が自動設定になっていると、幅や高さ(Width, Height)を設定してもそのサイズが適用されないようでした。

そのため、幅や高さを設定したい場合には、プログラム内またはプロパティエディタを使用して、予めそれらの自動設定を None にしておく必要があります。


[ もどる ]