Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.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
添加控件(带有服务器端事件处理程序)及其';s父容器动态ASP.NET C#_C#_Html_Asp.net - Fatal编程技术网

添加控件(带有服务器端事件处理程序)及其';s父容器动态ASP.NET C#

添加控件(带有服务器端事件处理程序)及其';s父容器动态ASP.NET C#,c#,html,asp.net,C#,Html,Asp.net,我试图动态添加一个组件,它本质上是一个包含两个按钮的容器。我需要按钮回发并启动服务器端方法。到目前为止,我已经尝试使用“HtmlButton mybtn=new HtmlButton()”,但是因为我需要在动态添加按钮的父容器的同时,它找不到要将其添加到的容器。因此,我求助于添加组件作为连接html。我认为我不能使用PageMethods,因为我需要按钮调用的方法需要发布响应,所以不能是静态的。我最接近的方法是在下面,但是这个方法没有开火。我尝试过使用“type=”按钮和不使用。如果能在解决这个

我试图动态添加一个组件,它本质上是一个包含两个按钮的容器。我需要按钮回发并启动服务器端方法。到目前为止,我已经尝试使用“HtmlButton mybtn=new HtmlButton()”,但是因为我需要在动态添加按钮的父容器的同时,它找不到要将其添加到的容器。因此,我求助于添加组件作为连接html。我认为我不能使用PageMethods,因为我需要按钮调用的方法需要发布响应,所以不能是静态的。我最接近的方法是在下面,但是这个方法没有开火。我尝试过使用“type=”按钮和不使用。如果能在解决这个问题上提供任何帮助,我们将不胜感激

doccarousel.InnerHtml +=
                        "<div class=\"documentdropdown\" id=\"dropdown" + filenamepart + "\">" +
                            "<button runat=\"server\" type=\"button\" class=\"txt2 link dropdownbtn\" id=\"download" + filenamepart + "\" onserverclick=\"downloadblobfile\" fileuri=\"" + fileuri + "\" >" +
                            "<i class=\"fad fa-trash fa-1x fontawesome-style deleteicon dropdownicon\"></i>download" +
                            "</button> </br>" +
                            "<button runat=\"server\" class=\"txt2 link dropdownbtn\" id=\"delete" + filenamepart + "\" onserverclick=\"deletefile\" fileuri=\"" + fileuri + "\" >" +
                            "<i class=\"fad fa-file fa-1x download fontawesome-style documenticon dropdownicon\"></i>delete" +
                            "</button>" +
                        "</div>";

不能将'runat=\'server\'添加到字符串中并期望创建asp控件。你需要真正的动态控制。请参阅示例:@VDWWD感谢您的回复。这是我最初的方法,但要求您有一个以前创建的容器来添加控件。我需要在同一事件中创建容器。是的,这不起作用。您还需要将该容器添加到页面上的某些内容。但页面上的空白占位符可用于添加控件。

        public void downloadblobfile()
        {
            Response.Write("download button clicked");
            // Download Blob and push to client

        }