行を持つ TableLayoutPanel (tlp) があります。ボタンで手動で行を追加します。最後の行の下に作成したすべての行には、tlp から行を削除するボタンがあります。コードは次のとおりです。
private void btnTSatirEkle_Click(object sender, EventArgs e)
{
tlpTDersRows = tlpTDers.RowCount;
tlpTDers.RowCount++;
DateTimePicker dtp = new DateTimePicker();
dtp.Name = "dtpTR" + (tlpTDersRows).ToString();
DateTimePicker dtp2 = (DateTimePicker)tlpTDers.Controls["dtpTR" + (tlpTDersRows - 1).ToString()];
dtp.Value = dtp2.Value.AddDays(1);
dtp.Dock = DockStyle.Fill;
tlpTDers.Controls.Add(dtp, 0, tlpTDersRows);
ComboBox comb = new ComboBox();
comb.Name = "cbxTR" + (tlpTDersRows).ToString();
comb.Dock = DockStyle.Fill;
comb.Items.AddRange(devamDur);
tlpTDers.Controls.Add(comb, 1, tlpTDersRows);
TextBox txtr = new TextBox();
txtr.Name = "txtTR" + (tlpTDersRows).ToString();
txtr.Dock = DockStyle.Fill;
txtr.Multiline = true;
tlpTDers.Controls.Add(txtr, 2, tlpTDersRows);
oldX = btnTSatirEkle.Location.X;
oldY = btnTSatirEkle.Location.Y;
Button buttonNew = new Button();
buttonNew.Name = "btnDelTR" + (tlpTDersRows - 1).ToString();
buttonNew.Text = "-";
buttonNew.Location = new Point(oldX, oldY);
buttonNew.Size = btnTSatirEkle.Size;
this.Controls.Add(buttonNew);
buttonNew.Click += new EventHandler(SatirSil); //I get error here, even I write SatirSil(sender, e, tlpTDersRows - 1)..
btnTSatirEkle.Location = new Point(644, tlpTDers.Controls["dtpTR" + tlpTDersRows.ToString()].Location.Y + 12);
tlpTDersRows++;
}
private void SatirSil(object sender, EventArgs e, int rowNo)
{
//codes
}
行番号をパラメータとしてSatirSilメソッドに送信したい(buttonNew_Clickイベントをクリックすると呼び出される)。
何か案は?