Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在动态加载的web usercontrol中引发加载事件_C#_Asp.net_User Controls - Fatal编程技术网

C# 在动态加载的web usercontrol中引发加载事件

C# 在动态加载的web usercontrol中引发加载事件,c#,asp.net,user-controls,C#,Asp.net,User Controls,我需要动态加载web用户控件。 查看,它声明页面生命周期事件未触发。 我想我可以通过反思来提出这些事件。我想不出如何触发事件,我是否遗漏了什么 谢谢 Podge在调用RenderControl之前,可以执行以下操作: 页面=新页面 page.Controls.Addreport 在这种情况下,将调用Init方法 在您的链接上给出的答案标准加载事件应该可以触发。为用户控件引发标准ASP.Net控件事件。如果要从父页面在usercontrol内部触发事件,则需要执行以下操作: 在usercontro

我需要动态加载web用户控件。 查看,它声明页面生命周期事件未触发。 我想我可以通过反思来提出这些事件。我想不出如何触发事件,我是否遗漏了什么

谢谢


Podge

在调用RenderControl之前,可以执行以下操作:

页面=新页面

page.Controls.Addreport

在这种情况下,将调用Init方法


在您的链接上给出的答案

标准加载事件应该可以触发。为用户控件引发标准ASP.Net控件事件。如果要从父页面在usercontrol内部触发事件,则需要执行以下操作:

在usercontrol内部创建一个事件并将其连接起来。在本例中,我将从Page_Load调用它:

 public event EventHandler TestEvent;

protected void Page_Load(object sender, EventArgs e)
{
   if (this.TestEvent != null)
       {
           this.TestEvent(this, e);
       }
}
在父页面中,连接用户控件TestEvent:

protected override void OnInit(EventArgs e)
{
    MyUserControl uc = LoadControl("~/PathToUserControl.ascx");
    uc.TestEvent += new EventHandler(MyUserControl_TestEvent);
}

protected void MyUserControl_TestEvent(object sender, EventArgs e)
{
    //this code will execute when the usercontrol's Page_Load event is fired.
}

希望有帮助

抱歉,未触发事件。