0

我在这里找到了许多等效的问题,但似乎不适用于我的问题。

我正在将控件动态加载到嵌套母版页中。在嵌套母版页中加载的不同用户控件中的按钮不会触发按钮单击事件。

调试时,它似乎只是在嵌套母版页上单击任何按钮时发生的正常回发。在调试中不会触发/捕获任何事件。嵌套母版页重新加载(回发),仅此而已。

一些可能与情况有关的信息:

  • 我正在为我的方法使用代码隐藏,以及我希望在哪里捕获事件。

  • 我已将加载 uc 的代码放在 Nested MasterPage 的 init sub 中。

  • 我已经测试过,并手动将控件添加到面板中,在整个生命周期中,一切都按预期连接,并且为手动添加的控件触发事件。

  • 我已经为我的按钮使用静态客户端 ID 进行了测试,因为我认为该事件可能连接不正确。这没有任何效果。

  • 我已经为我的控件手动分配了唯一 ID,没有效果。

  • 所有用户控件都具有并保持为它们设置的正确属性(描述、数量等)。

  • 每次加载嵌套母版页时,我都会重新加载用户控件。

  • 我没有退出 ifIsPostback,而是在每次回发时重新加载控件,作为控件上的按钮之一,可能会删除该控件,并且需要在母版页的 Page Init 上重建新的剩余控件。

  • 母版页(不是嵌套母版页)上有一个脚本管理器。

  • 我在内容页面中使用了 Ajax,但在 Nester Masterpage 中没有。

  • 母版页或嵌套母版页上没有更新面板。

  • 所有事件都在内容页面上以正常方式触发。

  • 从我的内容页面中,我动态地删除和添加控件到嵌套母版页。这很好用,控件也会相应地加载。

  • 我没有直接将控件从内容页面设置到母版页。

  • 我正在我的内容页面中创建控件,并将它们传递给一个例程,该例程管理一个包含我所有控件的自定义对象,并根据需要从该对象中添加和删除控件。

  • 在我的嵌套母版页初始化事件中,我单步执行我的自定义控件对象并将它们添加到面板中。

  • 我不确定如何在浏览器中调试回发事件,因为我没有为嵌套母版页中的这些控件使用 udpate 面板和 Ajax。

这是为有效的控件生成的 HTML(在设计时手动放入)

<input type="image" src="bookings_media/buttons/add-another-unit.jpg" 
id="ContentPlaceHolder1_ucAddAnotherUnit1_butAddAnotherUnit" 
name="ctl00$ctl00$ContentPlaceHolder1$ucAddAnotherUnit1$butAddAnotherUnit">

这是为动态添加的控件呈现的 HTML:

<input type="image" src="bookings_media/buttons/add-another-unit.jpg" 
id="ContentPlaceHolder1_ctl02_butAddAnotherUnit"
name="ctl00$ctl00$ContentPlaceHolder1$ctl02$butAddAnotherUnit">

任何可能在这里遇到的想法:

4

1 回答 1

0

尝试使用 OnCommand 而不是 OnClick 关于 ImageButton。

于 2013-07-29T08:04:45.830 回答