Calling a method in parent page from user control

前端 未结 10 1178
暖寄归人
暖寄归人 2020-11-28 23:01

I\'ve a user control registered in an aspx page On click event of a button in the user control, how do i call a method which is there in the parent page\'s code

10条回答
  •  再見小時候
    2020-11-28 23:32

    Follow good and appropriate approach,

    Use event and delegate concept make delegate as same signature as your method in parent page and then assign parent methad to it in parent page load event then call this delegate through event in user control.

    code sample and link is given below.

    //Parent Page aspx.cs part
    
     public partial class getproductdetails : System.Web.UI.Page
     {
      protected void Page_Load(object sender, EventArgs e)
      {
       ucPrompt.checkIfExist += new uc_prompt.customHandler(MyParentMethod);
      }
    
      bool MyParentMethod(object sender)
      {
       //Do Work
      }
    }
    
    //User control parts
    public partial class uc_prompt : System.Web.UI.UserControl
    {
     protected void Page_Load(object sender, EventArgs e)
     {
     }
    
     public delegate bool customHandler(object sender);
     public event customHandler checkIfExist;
     protected void btnYes_Click(object sender, EventArgs e)
     {
      checkIfExist(sender);
     }
    }
    

    Read more details how it works (Reference) :-

    Calling a method of parent page from user control

提交回复
热议问题