0

我在页面中有一个 UpdatePanel。在这个 UpdatePanel 中,我有一个带有按钮的控件。是否可以在后面的代码中为此按钮(位于用户控件内部)手动添加回发触发器?

这是示例代码

//Page
<UpdatePanel>
  <uc1:UserControl />
</UpdatePanel>

//UserControl
<textbox></textbox>
<asp:button></asp:Button>
4

1 回答 1

0

据我了解,您希望将用户控件中的按钮注册为包含用户控件的ASPX页面中 UpdatePanel 的 PostbackTrigger。我已经设法编写了一个简单的 Web 应用程序来复制这种情况,如果没有进一步的信息,我看不出你哪里出错了,或者你遇到的错误是什么,如果有的话。如果您扩展您的原始问题,例如通过提供您的代码的相关片段,这将有所帮助。我会尽力的...

在用户控件中,您可以使用以下代码将该按钮注册为更新面板的回发触发器:

    public void RegisterPostbackTrigger(UpdatePanel updatePanel)
    {
        PostBackTrigger buttonTrigger = new PostBackTrigger();
        buttonTrigger.ControlID = TestButton.ClientID;
        updatePanel.Triggers.Add(buttonTrigger);
    }

然后,您必须在将 UpdatePanel 的引用作为参数传递给您的页面代码中调用 RegisterPostbackTrigger。MyControl 指的是 UserControl

    MyControl.RegisterPostbackTrigger(MainUpdatePanel);

另一种可能与您的特定问题相关的方法是直接访问 ScriptManager 并使用其 RegisterPostBackControl 方法将您的按钮作为参数传递。这是一个链接

如果没有更多信息,真的不能再帮助你了!

祝你好运!

于 2013-05-03T17:03:05.753 回答