DataGridViewにヘッダーテキスト全体を表示したい(クリップしたり切り捨てたりしないでください)。
場合によっては、列の値についても同じようにしたいことがあります(「76トロンボーン」、「3.141592653589793」、「野生のフロンティアの王」などの比較的短い値の場合)。
名前またはインデックスで各列を具体的に参照し、値またはパーセンテージを設定できることは知っていますが、ヘッダーテキスト全体を表示するのに十分な幅になるように自動的にサイズを変更することをお勧めします。
DataGridViewにヘッダーテキスト全体を表示したい(クリップしたり切り捨てたりしないでください)。
場合によっては、列の値についても同じようにしたいことがあります(「76トロンボーン」、「3.141592653589793」、「野生のフロンティアの王」などの比較的短い値の場合)。
名前またはインデックスで各列を具体的に参照し、値またはパーセンテージを設定できることは知っていますが、ヘッダーテキスト全体を表示するのに十分な幅になるように自動的にサイズを変更することをお勧めします。
DataGridView の列を反復処理し、その AutoSizeMode プロパティを次のように設定できます。
foreach(DataGridViewColumn column in dataGridView1.Columns)
{
column.AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
}
DataGridViewAutoSizeColumnMode には他のオプションがあります。AllCells オプションは、ヘッダー セルを含むすべてのセルの内容に合わせてすべての列を調整します。
これをコードに実装するには、静的メソッドに配置して、再利用して他の DataGridView の列を設定できるようにすることをお勧めします。
public static void SetColumns(DataGridView dgv)
{
foreach(DataGridViewColumn column in dgv.Columns)
{
column.AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
}
}
必要に応じて、DefaultCellStyles などの他の一般的な列の変更を追加できます。
この拡張メソッド(私自身のもの)はあなたの質問に答えることができます - さらに{ヘッダー、表示/非表示の列、幅、高さ、スクロールバー} https://stackoverflow.com/a/10867026/967770