Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.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中单击按钮,以编程方式将控件添加到ajax更新面板_C#_Asp.net_Ajax - Fatal编程技术网

C# 在asp.net中单击按钮,以编程方式将控件添加到ajax更新面板

C# 在asp.net中单击按钮,以编程方式将控件添加到ajax更新面板,c#,asp.net,ajax,C#,Asp.net,Ajax,我想在“更新”面板上添加标签,单击按钮。。 我在.aspx文件中有以下代码 <asp:UpdatePanel ID="up" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="false" > <ContentTemplate > <asp:Panel runat="server" ID="myPanel" &g

我想在“更新”面板上添加标签,单击按钮。。 我在.aspx文件中有以下代码

 <asp:UpdatePanel ID="up" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="false" >
                   <ContentTemplate >
                       <asp:Panel runat="server" ID="myPanel" >
                        <label id="ssd" runat="server" >abc</label>
                       </asp:Panel>
                       <asp:Button ID="Button1" runat="server" OnClick="Button1_Click"  Text="test"/>
                   </ContentTemplate>
               </asp:UpdatePanel>

但它不起作用:-(

由于
更新面板的UpdateMode设置为
条件的
,您需要从codebehind手动更新它:

protected void Button1_Click(object sender, EventArgs e)
{
    Label l1 = new Label();
    l1.ID = "label1";
    l1.Text = "this is it...";
    up.ContentTemplateContainer.Controls.Add(l1); 

    up.Update();     
}
MSDN

如果计划使用Update方法,请将UpdateMode属性设置为 有条件。如果您希望决定更新服务器中的面板 逻辑,确保ChildrenAsTriggers属性为false,并且 没有为面板定义显式触发器

在典型的页面开发场景中,如果您定义了触发器或 UpdatePanel控件的ChildrenAsTriggers属性为true, 更新方法在页面生命周期内自动调用

请注意,即使使用ASP.NET Ajax,您也需要重新创建动态控件。因此,您最迟需要在下一次回发时在
page\u load
中手动创建标签。

protected void page\u load(object sender,EventArgs e){label l1=new label();l1.ID=“label1”;l1.Text=“就是这样…”;this.form1.Controls.Add(l1);}即使这并没有将标签添加到我的页面:-(
protected void Button1_Click(object sender, EventArgs e)
{
    Label l1 = new Label();
    l1.ID = "label1";
    l1.Text = "this is it...";
    up.ContentTemplateContainer.Controls.Add(l1); 

    up.Update();     
}