我一直试图让一个更新面板在屏幕上添加控件,因为代码会在后端C#代码中运行。
我尝试了很多不同的方法,但无论我做什么,我都无法做到这一点 这可以使用ASP.NET吗?
这是一个我的意思的简单例子。
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID='mng' runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UPPnl" runat="server" UpdateMode="Conditional">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Add5" EventName="Click" />
</Triggers>
<ContentTemplate>
<asp:PlaceHolder ID="Place" runat="server"></asp:PlaceHolder>
<asp:Button ID="Add5" runat="server" Text="Add 5" OnClick="Add5_Click" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</form>
代码背后
protected void Add5_Click(object sender, EventArgs e)
{
for (int i = 0; i < 5; i++)
{
Place.Controls.Add(new LiteralControl("Test" + i + "<br />"));
UPPnl.Update();
}
}
我希望每次通过Update方法调试时都会得到一个新的文本行。但这似乎不想工作
任何想法?
答案 0 :(得分:0)
尝试在Page_Load中添加此行:
ScriptManager1.RegisterAsyncPostBackControl(Add5);