【问题标题】:how to access user control placed in master pages's user control如何访问放置在母版页用户控件中的用户控件
【发布时间】:2013-03-24 15:19:59
【问题描述】:

我需要从母版页访问用户控件,但用户控件没有直接放在母版页中。它有这样的层次:

母版页 > HeaderUserControl > LoginUserControl > 登录按钮和注销按钮

要求:

我需要调用注销按钮的注销方法。不幸的是,我没有得到最好的设计来做到这一点。

请提供建议和帮助。

谢谢

【问题讨论】:

  • 理想情况下,您的注销逻辑不会在用户控件的代码隐藏中。它将位于两个页面都可以调用的单独类中。
  • 只使用事件或模型数据绑定。

标签: c# asp.net .net vb.net


【解决方案1】:

创建一个httphandler并移动logout的代码,你可以通过调用handler来使用它。

【讨论】:

    【解决方案2】:

    正如@SimonWhitehead 所说,您应该添加一个类并从MasterPage 和LoginControl 调用Logout 方法。但是,如果您坚持,这是一种方法,几乎​​可以使该方法在下一个级别可见:

    登录用户控件:

    Public Sub DoLogout()
        'Do something'
    End Sub
    
    Protected Sub Logout_Click(sender As Object, e As EventArgs) Handles Logout.Click
        DoLogout()
    End Sub
    

    HeaderUserControl:

    Public Sub DoLogout()
        Me.LoginUserControl.DoLogout()
    End Sub
    

    最后

    母版页:

    Protected Sub Logout_Click(sender As Object, e As EventArgs) Handles Logout.Click
        HeaderUserControl.DoLogout()
    End Sub
    

    这将在LoginUserControl 控件中调用您的方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-27
      • 2017-12-23
      • 2011-03-17
      • 1970-01-01
      • 2010-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多