【问题标题】:replacing usercontrol1 with usercontrol2 in the same placeholder of the aspx page, with the button in usercontrol1在 aspx 页面的同一占位符中将 usercontrol1 替换为 usercontrol2,并使用 usercontrol1 中的按钮
【发布时间】:2012-07-23 01:59:28
【问题描述】:

我可以用主 aspx 页面中的按钮替换同一占位符中的用户控件。 但是我怎样才能用用户控件中的按钮替换同一个占位符中的用户控件..

例如,我加载了 usercontrol1,并且在控件内有一个按钮,我想在同一个占位符中更改为 usercontrol2..

所以我有 usercontrol1 和 usercontrol2 和 usercontrol3 的按钮 我有 usercontrol2 和 usercontrol1 和 3 的按钮 & 我有 usercontrol3 和 usercontrol1 和 2 的按钮..

我想在这些控件之间移动..使用控件中的按钮

【问题讨论】:

    标签: asp.net .net


    【解决方案1】:

    在您的用户控件中添加事件处理程序并相应地使用页面上的usercontrol's click events(通过隐藏/取消隐藏其他控件或creating runtime control)。

    【讨论】:

    • 我能够捕获点击事件..但它显示找不到占位符的对象..
    • 我意识到你提到的用户控件的单击事件是针对静态控件的。当使用动态控件时,我们不会将其拖放到 aspx 文件中。我们在外部单击按钮时调用它占位符.. 并在下一次单击时清除占位符并填充新控件。现在我有一个带有按钮的控件,该按钮假设调用新控件..那么由于控件的值是动态的,我无法在 aspx 中为控件中的按钮创建事件....现在有没有办法可以在 aspx 页面上注册 mycontrol 为控件内的按钮编写事件。
    • 当然可以.. 由于您使用动态用户控件,您应该在每个请求(回发)上重新创建您的控件,因为没有为动态控件保存视图状态,因此它们在回发时消失。检查此stackoverflow.com/questions/8914692/… 或者,您可以将这 3 个控件放在同一个占位符(静态)中并切换可见性。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-30
    • 1970-01-01
    相关资源
    最近更新 更多