ปุ่ม ASP.NET บนตัวยึดตำแหน่งและตัวยึดตำแหน่งในเหตุการณ์ปุ่มไฟล์การควบคุมผู้ใช้ (ascx) ไม่ทำงาน

ฉันกำลังสร้างปุ่มลิงก์แบบไดนามิกบนการควบคุมผู้ใช้โดยใช้ตัวยึดตำแหน่งและตัวจัดการเหตุการณ์ที่แนบมากับปุ่มลิงก์คลิก+=เหตุการณ์ใหม่ (Button_Click) ไม่เริ่มทำงาน

ขอบคุณล่วงหน้า


ข้อมูลโค้ดของ

   protected override void OnInit(EventArgs e)
             MenuListPlaceHolder.Controls.Add(new LiteralControl("<li>"));
             ctrl.ID = this.UniqueID + (nCounter++).ToString();
             ctrl.Text = cardType.Name;
             ctrl.Click += new EventHandler(this.CardName_Click);            
             MenuListPlaceHolder.Controls.Add(ctrl);
             MenuListPlaceHolder.Controls.Add(new LiteralControl("</li>"));

เมื่อคลิกเหตุการณ์โพสต์ย้อนกลับจะเริ่มทำงาน แต่ไม่ได้ดำเนินการ CardName_Click



person Madev    schedule 31.12.2011    source แหล่งที่มา


คำตอบ (1)


คุณต้องแนบไปกับกิจกรรม Page_Load

ชอบอย่างนั้น:

protected void Page_Load(object sender, EventArgs e) {
    this.Btn.OnClick+=new Event(Button_Click) 
}

คุณควรตรวจสอบ: ที่นี่เพื่อเรียนรู้เกี่ยวกับวงจรของหน้า

person IamStalker    schedule 31.12.2011
comment
ตามลิงก์ของคุณ โค้ดจาก OP ควรอยู่ใน PreInit OnInit เริ่มทำงานก่อน Page_load ดังนั้นฉันจึงพบว่ามันยากที่จะเชื่อว่าคำแนะนำของคุณจะใช้ได้กับ OP - person rene; 31.12.2011
comment
ใช่ แต่ PreInit คุณลืมบางสิ่งที่คุณควรแนบผู้รับมอบสิทธิ์ในคำขอแต่ละเพจ ไม่ใช่ครั้งเดียว ดังนั้นฉันจึงพูดจากประสบการณ์ของฉันในคำขอนั้น - person IamStalker; 31.12.2011