ボタンがクリックされたときにEssentialがDataGridViewポップアップを表示するカスタムコントロールがあります。ポップアップのサイズをDataGridView列のサイズに変更したいと思います。DataGridViewの作成時にAutoSizeモードを設定しました。
dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
また、合計列サイズを計算する直前に、次のメソッドを呼び出します。
public void AutoResize()
{
dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
dataGridView1.AutoResizeRows(DataGridViewAutoSizeRowsMode.AllCells);
dataGridView1.Refresh();
}
ポップアップが最初に表示されたとき、サイズが適切に変更されていません。これは、私が知る限り、dataGridViewコントロールが一度表示されるまで列のAutoSizeが実行されないためです。
これが実行の順序です。
CreateCustomControl-> CreateDataGridView(データ付き)-> AddToCustomControl-> CallAutoResize-> ShowCustomControl(DataGridView付き)
簡単な解決策は、表示後にコントロールのサイズを変更することです。コントロールが表示されるまでAutoResizeが実行されない理由を知りたいのですが。
よろしくお願いします。