Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.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# 在ASP.NET中动态添加用户控件_C#_Asp.net_Events_Dynamic_User Controls - Fatal编程技术网

C# 在ASP.NET中动态添加用户控件

C# 在ASP.NET中动态添加用户控件,c#,asp.net,events,dynamic,user-controls,C#,Asp.net,Events,Dynamic,User Controls,我知道这个问题被问了很多次,但我的问题还是没有解决 我试图迭代对象列表,并用该对象填充模板“用户控件”, 类似于搜索的结果列表 在这些用户控件中有一个链接按钮,该按钮应重定向到另一个页面, 当我点击链接按钮时,什么也没发生,我用谷歌搜索了一下,但没有令人满意的答案 下面是代码,我将用按钮而不是用户控件来说明: protected override void OnInit(EventsArgs e) { for(int i=0;i<10;i=i+1) { Butt

我知道这个问题被问了很多次,但我的问题还是没有解决

我试图迭代对象列表,并用该对象填充模板“用户控件”, 类似于搜索的结果列表

在这些用户控件中有一个链接按钮,该按钮应重定向到另一个页面, 当我点击链接按钮时,什么也没发生,我用谷歌搜索了一下,但没有令人满意的答案

下面是代码,我将用按钮而不是用户控件来说明:

protected override void OnInit(EventsArgs e)
{
   for(int i=0;i<10;i=i+1)
   {
        Button b = new Button();
        b.ID = "Button" + i;
        b.Click += new System.EventHAndler(this.Button_OnClick);
        Controls.Add(b);
    }
 base.OnInit(e);
}

private void Button_OnClick(object Sender,System.EventsArgs e)
{
     Response.Redirect("~/Some.aspx");
}

public override void VerifyRenderingInServerForm(Control control)
{
    return;
}
受保护的覆盖无效OnInit(事件)
{
对于(inti=0;i试试这个

for (int i = 0; i < 10; i = i + 1)
{
    Button b = new Button();
    b.ID = "Button" + i;
    b.Click += new EventHandler(b_Click); 
    Controls.Add(b);
}

void b_Click(object sender, EventArgs e)
{
    //some code
}
for(int i=0;i<10;i=i+1)
{
按钮b=新按钮();
b、 ID=“按钮”+i;
b、 单击+=新建事件处理程序(单击);
增加(b);
}
无效b_单击(对象发送者,事件参数e)
{
//一些代码
}

该按钮永远不会启动,因为它不是服务器窗体控件的子控件

如果还没有表单控件,则需要添加它:

<form id="form1" runat="server">
</form>


使用Page_Init而不是OnInit


在创建按钮之前调用base.OnInit也可能会起作用。

我没有发现您的示例中有任何错误,您可以发布实际代码吗?我刚刚编辑了代码,这就是我现在要做的,我希望新按钮触发事件。我正在使用VerifyRenderingInServerForm方法,否则会出现错误。是的,我已经在这样做了,但是它从来没有达到那种方法。我应该确切地把它放在哪里?在那之后还是之前?它起作用了:)非常感谢,我挣扎了三天。
  Controls.Add(b);
  form1.Controls.Add(b);