在我正在研究的项目中我有TabContainer(AJAX.NET)有很多tabPanel,所有这些都在不同的表上执行相同的功能 BUT
让我举一个例子:
<asp:TabContainer ID="TabContainer3" runat="server" ActiveTabIndex="0" BorderStyle="None"
BorderWidth="0" CssClass="MyTabStyle" Width="625px">
<asp:TabPanel ID="TabPanel1" runat="server">
<HeaderTemplate>
Tab_x
</HeaderTemplate>
<ContentTemplate>
<asp:TextBox ID="txt_x" runat="server"></asp:TextBox>
<asp:Button ID="btnx" runat="server" Text="Button" />
</ContentTemplate>
</asp:TabPanel>
<asp:TabPanel ID="TabPanel2" runat="server">
<HeaderTemplate>
Tab_y
</HeaderTemplate>
<ContentTemplate>
<asp:TextBox ID="txt_y" runat="server"></asp:TextBox>
<asp:Button ID="btny" runat="server" Text="Button" />
</ContentTemplate>
</asp:TabPanel>
</asp:TabContainer>
代码背后(VB.NET)
Protected Sub btnx_Click(sender As Object, e As System.EventArgs) Handles btnx.Click
SaveText_x(txt_x.Text)
End Sub
Protected Sub btny_Click(sender As Object, e As System.EventArgs) Handles btny.Click
SaveText_y(txt_y.Text)
End Sub
有没有办法创建通用Sub或Function所以如果我点击 btnx 函数Save_x(txt_x.Text)被调用
当我点击 btny 函数Save_y(txt_y.Text)时会被调用吗?
答案 0 :(得分:1)
您可以使用以下代码分配多个按钮以使用相同的单击处理程序:
Protected Sub btn_Click(sender As Object, e As System.EventArgs) Handles btnx.Click, btny.Click
Dim btn As Button = CType(sender, Button)
If btn.ID = "btnx" Then
SaveText_x(txt_x.Text)
ElseIf btn.ID = "btny" Then
SaveText_y(txt_y.Text)
End If
End Sub
btnx和btny都将触发此Sub,它将检查发送它的按钮以查看要调用的方法。
答案 1 :(得分:0)
1)使用公共字符串属性进行用户控制。使用视图状态来存储该属性的值。
2)将该用户控件添加到选项卡中,设置该属性的值为“X”或“Y”或任何值。
3)在按钮上单击,使用if .. else if,else或switch语句检查该属性,并调用SaveText函数变体。