2010-02-22 26 views
6

Yüklemede bir düğmeyle kullanıcı denetimi var. düğmesini tıklatın olay şuna benzer:Kullanıcı Denetim Olayları

kullanıcı kontrolü kullanıcı yükleme butonuna tıkladıktan sonra ben düğmesini tıklatın olay kodu çalıştırılır hemen sonra bazı işlemi gerçekleştirmek istiyoruz, mevcut sayfada
protected void btnUpload_Click(object sender, EventArgs e) 
{ 
    // Upload the files to the server 
} 

Kullanıcı kontrolü. Çalışmasını tamamladıktan sonra tıklama etkinliğine nasıl girerim?

cevap

8

Sen gibi bir şey kullanıcı kontrolünde bir olay yaratmak zorunda:

protected void btnUpload_Click(object sender, EventArgs e) 
{ 
    // Upload the files to the server 

    if(ButtonClicked!=null) 
     ButtonClicked(this,e); 
} 

Sonra takmak mümkün olacak senin yöntem yangında ardından

public event EventHandler ButtonClicked; 

ve olay ... Kullanıcı kontrolünüzün ButtonClicked olayına.

+1

Ve sonra usercontrol içeren sayfanın olayı dinlediğinden emin olun .... this.myUploadControl.ButtonClicked + = new EventHandler (MyUploadControl_ButtonClicked); MyUploadControl_ButtonClicked, olay işleyicisi olarak Sayfa sınıfında bildirildi. –

0

UserControl'ın codebehind bir Kamu Mülk Oluştur:

page_load Sonra
public Button btn 
    { 
     get { return this.Button1; } 
    } 

sizin gibi kullanabilirsiniz: sadece başka olay çağırmak için

WebUserControl11.btn.Click += (s, ea) => { Response.Write("Page Write"); }; 
0

yerine bir olay işleyicisi yazma, bunun yerine can açık olay olayını kullanarak olayları doğrudan birbirine bağlayın:

Artık ButtonClicked etkinliğinize abone olan herkes, btnUpload denetiminin Click olayına doğrudan abone oluyor. Bunu uygulamak için çok daha öz bir yol olduğunu düşünüyorum.