基本的に、クリックされたボタンに応じて 3 つの異なるデータグリッド ビューを表示する次のコードがあります。
public partial class ChooseDB : Form
{
private DataGridView doctorsDataGridView = new DataGridView();
private DataGridView patientsDataGridView = new DataGridView();
private DataGridView hospitalsDataGridView = new DataGridView();
public ChooseDB()
{
InitializeComponent();
}
public void buttonDoctorsDB_Click(object sender, EventArgs e)
{
doctorsDataGridView.DataSource = doctorsDataSet.Doctors;
doctorsDataGridView.Dock = DockStyle.Right;
if (Controls.Contains(patientsDataGridView))
Controls.Remove(patientsDataGridView);
if (Controls.Contains(hospitalsDataGridView))
Controls.Remove(hospitalsDataGridView);
this.Controls.Add(doctorsDataGridView);
}
public void buttonPatientsDB_Click(object sender, EventArgs e)
{
patientsDataGridView.DataSource = patientsDataSet.Patients;
patientsDataGridView.Dock = DockStyle.Right;
if (Controls.Contains(doctorsDataGridView))
Controls.Remove(doctorsDataGridView);
if (Controls.Contains(hospitalsDataGridView))
Controls.Remove(hospitalsDataGridView);
this.Controls.Add(patientsDataGridView);
}
public void buttonHospitalsDB_Click(object sender, EventArgs e)
{
hospitalsDataGridView.DataSource = hospitalsDataSet.Hospitals;
hospitalsDataGridView.Dock = DockStyle.Right;
if (Controls.Contains(patientsDataGridView))
Controls.Remove(patientsDataGridView);
if (Controls.Contains(doctorsDataGridView))
Controls.Remove(doctorsDataGridView);
this.Controls.Add(hospitalsDataGridView);
}
}
}
これまでのところは順調ですが、表示されるテーブルはすべて右側に「滑らかに」なっています
自動サイズ調整について調べましたが、コードに具体的に適用する方法が見つかりませんでした。最初の2つだけを表示してから、スクロールバーをブートに表示するのではなく、すべての列を表示したいと思います。
ここでは、自動サイズ調整が正しい方法であると想定しています。そうでない場合は、正しい道を教えてください。