Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.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
Asp.net 将按钮单击事件添加到从数据库生成的按钮控件_Asp.net - Fatal编程技术网

Asp.net 将按钮单击事件添加到从数据库生成的按钮控件

Asp.net 将按钮单击事件添加到从数据库生成的按钮控件,asp.net,Asp.net,我有一个从母版页继承的Test.aspx页。我正在为Test.aspx页面填充数据库中的控件内容 我从数据库中获取包含所有控件内容的整个字符串,并使用Page.ParseControl方法解析要控制的输入字符串,然后将控件添加到内容占位符中 从数据库中提取的字符串包含以下按钮控件 上面的按钮控件呈现到UI,但当我尝试单击按钮时,不会触发按钮单击事件 有人能帮我解决这个问题吗 谢谢和问候, Santosh Kumar Patro问题在于,在处理回发数据以触发事件之前,需要创建控件。您不能在pag

我有一个从母版页继承的Test.aspx页。我正在为Test.aspx页面填充数据库中的控件内容

我从数据库中获取包含所有控件内容的整个字符串,并使用Page.ParseControl方法解析要控制的输入字符串,然后将控件添加到内容占位符中

从数据库中提取的字符串包含以下按钮控件

上面的按钮控件呈现到UI,但当我尝试单击按钮时,不会触发按钮单击事件

有人能帮我解决这个问题吗

谢谢和问候,
Santosh Kumar Patro

问题在于,在处理回发数据以触发事件之前,需要创建控件。您不能在page_load或更高版本中重新创建控件,它们必须在页面生命周期的早期创建。我们曾经在包含页面的构造函数(或自定义控件)中创建子控件,然后事件就可以工作了。

您能像下面这样尝试吗

Button btn = (Button)Page.ParseControl("<asp:button text='Click here!' runat='server' />");
if(btn != null)
{
   btn.Click += new EventHandler(BtnClick); 
}
void BtnClick(object sender, EventArgs e) 
{ 
   //do something
}
按钮btn=(按钮)Page.ParseControl(“”);
如果(btn!=null)
{
点击+=新建事件处理程序(点击);
}
void BtnClick(对象发送方,事件参数e)
{ 
//做点什么
}
谢谢


Deepu

在PageLoad的哪个阶段调用Page.ParseControl()?绑定事件处理程序的代码是什么?我正在调用Page_Load event.Button btn=(Button)Page.ParseControl(“”)中的Page.PaeseControl;出现以下错误:无法将类型为“System.Web.UI.Control”的对象强制转换为类型为“System.Web.UI.WebControl.Button”。在页面_PreInit()中添加控件如何?