Melaksanakan Peristiwa dalam Kawalan Pengguna dan Mengendalikannya dalam Borang Utama
Apabila membuat kawalan pengguna tersuai, mungkin perlu mencetuskan peristiwa yang sepatutnya dikendalikan oleh borang utama. Ini memberikan fleksibiliti dan membolehkan kawalan yang lebih baik antara komponen berbeza dalam aplikasi.
Untuk melaksanakan fungsi ini, anda perlu mencipta pengendali acara dalam kawalan pengguna yang akan dinaikkan apabila peristiwa berlaku dalam kawalan. Ini membolehkan acara itu dibuih ke bentuk utama, di mana ia boleh dikendalikan dengan sewajarnya.
Sebagai contoh, pertimbangkan kawalan pengguna tersuai dengan kawalan ke bawah angka. Apabila nilai kawalan ini berubah, anda mahu borang utama mengemas kini tetingkap paparan.
Kod Pengendalian Acara
Dalam kawalan pengguna, cipta pengendali acara untuk kawalan atas-bawah angka, seperti yang ditunjukkan di bawah:
[Browsable(true)] [Category("Action")] [Description("Invoked when user clicks button")] public event EventHandler ButtonClick;
Dalam kaedah pengendalian acara untuk kawalan atas-bawah angka, cetuskan ButtonClick acara untuk menggelembungkannya ke dalam borang:
protected void Button1_Click(object sender, EventArgs e) { //bubble the event up to the parent if (this.ButtonClick != null) this.ButtonClick(this, e); }
Dalam borang utama, langgan acara ButtonClick kawalan pengguna:
UserControl1.ButtonClick += new EventHandler(UserControl_ButtonClick);
Akhir sekali, kendalikan acara di utama borang:
protected void UserControl_ButtonClick(object sender, EventArgs e) { //handle the event }
Nota:
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan dan Mengendalikan Acara Kawalan Pengguna Tersuai dalam Borang Utama?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!