在我的母版页中,我有两个按钮:
<asp:Button ID="btnPrev" runat="server" CssClass="btn btn-prev" Text="Prev" />
<asp:Button ID="btnNext" runat="server" CssClass="btn btn-next" Text="Next" />
用户点击,当然页面会点火,很棒,除了我想根据按下哪个按钮执行操作。我可以回过头来引用母版页作为内容页面上的第一件事
Call btnNext_clickassessment(sender, e)
和
Protected Sub btnNext_clickassessment(sender As Object, e As System.EventArgs)
Me.Master.btnNext_Click(sender, e)
End Sub
但是,这并不能确定实际按下了哪个按钮。
我查看了onclick
和If CType(sender, Button).ID = "btnNext_Click" Then
但是还没有找到解决方案(或者其中一个是我错了!
甚至可能是一些javascript?
答案 0 :(得分:1)
您还可以在母版页上声明公共属性,然后在内容页面上处理事件,如下所示
<强>母版强>
Public btnPrev As Button
Public btnNext As Button
<强> ContentPage 强>
'in page load
AddHandler Me.Master.btnPrev.Click, AddressOf Me.btnPrevNext_Click
AddHandler Me.Master.btnNext.Click, AddressOf Me.btnPrevNext_Click
然后是你的处理程序
Private Sub btnPrevNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
' Handle your Button clicks here
dim btnName as string
btnName = sender.ID
' do stuff with the button name
End Sub
或者使用两个不同的处理程序来简化代码
<强> ContentPage 强>
'in page load
AddHandler Me.Master.btnPrev.Click, AddressOf Me.btnPrev_Click
AddHandler Me.Master.btnNext.Click, AddressOf Me.btnNext_Click
然后是你的处理程序
Private Sub btnPrev_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
' Handle your Previous Button click here
End Sub
Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
' Handle your Next Button click here
End Sub