1
第一部分處於循環狀態。它創建了沒有問題的動態複選框。動態創建使用常用處理程序的多個控件
// All I am doing here is incrementing our session counter
int id = Convert.ToInt32(Session["id"]);
id++;
Session["id"] = id;
// Now I create my checkbox
chkDynamic = new CheckBox();
chkDynamic.Text = "hey";
string chk = "chk" + id.ToString();
chkDynamic.ID = chk;
chkDynamic.CheckedChanged += new EventHandler(this.chkDynamic_CheckedChanged);
Panel1.Controls.Add(chkDynamic);
我的事件處理程序沒有爲此接線。 Strangly如果我硬編碼的工作,但該ID僅用於循環的一個迭代,因爲如果我們硬編碼的ID,然後我們會碰上「多個ID錯誤」
protected void chkDynamic_CheckedChanged(object sender, EventArgs e)
{
if (chkDynamic.Checked)
Response.Write("you checked the checkbox");
else if (!chkDynamic.Checked)
Response.Write("checkbox is not checked");
}
您可以進一步解釋嗎?我嘗試了每種語法組合,並且我無法獲得上面的工作 – clamchoda
我已經擴展了我的代碼來替換您的事件處理程序 – drdwilcox
我已經從字面上複製/粘貼了您的代碼,並且事件現在不會觸發。沒有錯誤,只是沒有解僱。我知道這一定是正確的路線:( – clamchoda