【问题标题】:ASP.NET adding Ajax controls to UpdatePanel in Ajax requestASP.NET 在 Ajax 请求中将 Ajax 控件添加到 UpdatePanel
【发布时间】:2009-12-15 21:57:58
【问题描述】:

我正在尝试执行以下操作:页面上只有一个 ScriptManager 和一个 UpdatePanel(带有空的 ContentTemplate)。我想在页面加载期间在其上添加一个按钮。然后在按下按钮后,我想获得一个 Ajax 请求并在页面上生成一些动态控件。

但是不行,代码如下:

protected void Page_Load(object sender, EventArgs e)
{
    if(!IsPostBack)
        listServices();
}

private void listServices()
{
    Button button = new Button();
    button.Text = "Save";
    button.ID = "Save";
    button.Click += new EventHandler(button_Click);

    UpdatePanel1.ContentTemplateContainer.Controls.Clear();
    UpdatePanel1.ContentTemplateContainer.Controls.Add(button);

    AsyncPostBackTrigger trig = new AsyncPostBackTrigger();
    trig.ControlID = button.UniqueID;
    trig.EventName = "Click";
    UpdatePanel1.Triggers.Add(trig);
}

void button_Click(object sender, EventArgs e)
{
    throw new NotImplementedException();
}

我研究过:[在 ASP.NET AJAX 中向 UpdatePanel 动态添加控件][1] 但它并没有解决我的问题。

这样做必须是可能的,许多服务都具有此功能。

感谢您的帮助。 亚当

【问题讨论】:

  • 你没有真正详细说明问题是什么......“它不起作用”并没有给我们太多继续。
  • 好的,问题是:当页面生成时,我看到了保存按钮。但是当我点击它时,没有触发button_Click事件(但是Page_Load方法是,IsPostBack==false)。
  • hai adam !Ispostback 是个问题...

标签: asp.net ajax


【解决方案1】:

海亚当, 看看这个How can I create buttons and hook up events from postback

它处理 commandEventHandler,你将它更改为事件处理程序,它可能对你有用......

【讨论】:

    猜你喜欢
    • 2010-10-07
    • 2011-03-25
    • 2020-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-24
    • 2013-12-12
    相关资源
    最近更新 更多