C#のdatagridviewに列を追加するときに、動的なtextBoxとラベルを生成したいと思います。また、新しく生成されたtextBoxを引数/新しい列名として受け取るSQLクエリを後で作成したいと思います。発生するエラーは、「引数の範囲外の例外が処理されなかった」ことを示しています。
助けてください
public void CreateLabels()
{
Label lb = new Label();
this.Controls.Add(lb);
int p= dataGridView1.ColumnCount;
for (int k = p; k <= dataGridView1.ColumnCount; k++)
{
for (int z =p; z <= dataGridView1.ColumnCount; z++)
{
dataGridView1.Refresh();
lb.Text = dataGridView1.Columns[z++].HeaderText;
}
lb.Show();
lb.Visible = true;
}
lb.Location = new Point(m,n=n+25);
lb.Width = 199;
lb.Height = 20;
}
public void CreateTextBoxes()
{
TextBox tb = new TextBox();
this.Controls.Add(tb);
for (int i = 5; i <= dataGridView1.ColumnCount; i++)
{
dataGridView1.Refresh();
tb.Name = "textBox" + i;
MessageBox.Show(tb.Name);
}
tb.Location = new Point(x, y = y + 25);
tb.Show();
tb.Visible = true;
}*/
//Below method is used to get data in datagridview1 and to reflect in runtime text boxes and labels;the visible property is kept false
/*private void displayRec()
{
try
{
string str = System.Environment.MachineName;
SqlConnection sconn = new SqlConnection("Data Source='" + str + "';Initial Catalog=main;Integrated Security=True");
DataTable dt = new DataTable();
SqlDataAdapter da = new SqlDataAdapter("Select * from invent", sconn);
da.Fill(dt);
dataGridView1.DataSource = dt.DefaultView;
//dataGridView1.Refresh();
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
}