0

実行Page_load時ボタンを作成しています。ページの読み込み時にポスト バック条件がチェックされていません。Datatable_data には、ボタンの ID とボタンのテキスト パーツとして使用されるさまざまなデータが存在します。

ボタンを作成するコードは

for (i = 0; i < dt.Rows.Count; i++)
{
  btn = new Button();
  btn.ID = Datatable_data.Rows[i][1].ToString();
  btn.Text = Datatable_data.Rows[i][0].ToString();
  placeholderID.Controls.Add(btn);
  btn.Click += new EventHandler(btn_Click);
}

クリックイベントは次のとおりです。

void btn_Click(object sender, EventArgs e)
{
   string str=btn.ID;
}

ボタンは正常に作成されましたが、5 つのボタンのうち任意のボタンをクリックするstrと、最後に作成されたボタンの ID が保存されますが、クリックされたボタンの ID が必要です。

4

1 に答える 1

3

これを試して:

void btn_Click(object sender, EventArgs e)
{
    string str = ((Button)sender).ID;
}
于 2013-09-22T09:25:15.040 に答える