私はドロップダウンリストの各選択肢を動的に作成しています。イベントハンドラはC#と完全には機能しません
次のコードでは、各ボタンにイベントハンドラを追加しています。
button.Click += new System.EventHandler(button_Click);
PlaceHolder1.Controls.Add(button);
private void button_Click(object sender, EventArgs e)
{
//Do something...
Response.Write("hello");
}
しかし残念ながら、それはそのイベントを発生し、
button_Click次のように私にエラーを与えていない「Index.button_Click(オブジェクトは、System.EventArgs)」はない「メソッド」であります指定されたコンテキストで有効です
どうすれば処理できますか?
protected void DropDownList1_SelectedIndexChanged1(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(this, typeof(Page), "Close", "javascript:OpenPopUp1();", true);
if (Session["filter"] == DropDownList1.SelectedValue)
{
}
else
{
if (Session["filter"] == "")
{
Session["filter"] = DropDownList1.SelectedValue + ":";
}
else
{
Session["filter"] = DropDownList1.SelectedValue + ":" + Session["filter"];
}
}
string asd = Session["filter"].ToString();
string[] split = asd.Split(':');
DropDownList1.Items.RemoveAt(DropDownList1.SelectedIndex);
for (int i = 0; i < split.Count(); i++)
{
string filter = split[i].ToString();
Button button = new Button();
button.Text = split[i].ToString();
button.ID = split[i].ToString();
button.Attributes.Add("onclick", "remove(" + split[i].ToString() + ")");
button.Click += new System.EventHandler(button_Click);
PlaceHolder1.Controls.Add(button);
}
}
上記は、dropdownselected indexのコード全体を示しています。
* は、*は、あなたがそのコードを入れている:
は今、すべてが言ったことを、私は次の修正(または少なくとも改善)を提供していますか?方法は?もしそうなら、どちらの方法? –
button.Click + =新しいSystem.EventHandler(button_Click); PlaceHolder1.Controls.Add(ボタン);選択インデックス変更方法 – Abhishek
の下に置かれています。完全な方法を示してください。 –