简体   繁体   English

一般功能

[英]General Function

in a project I am working on I have TabContainer (AJAX.NET) have many tabPanels all of them are doing the same function BUT each on on a different Table 在我正在研究的项目中,我拥有TabContainer(AJAX.NET)有很多tabPanels,它们都在执行相同的功能, 但是每个都在不同的Table上

let me give a sample : 让我给一个例子:

    <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>

Code behind (VB.NET) 背后的代码(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

is there a way to create general Sub or Function so if I clicked btnx function Save_x(txt_x.Text) be called 有没有一种方法来创建常规Sub或Function,因此如果我单击btnx函数,则调用Save_x(txt_x.Text)

and when I click btny function Save_y(txt_y.Text) be called ? 当我单击btny函数Save_y(txt_y.Text)时会被调用吗?

You can assign multiple buttons to have the same click handler with the following code : 您可以使用以下代码为多个按钮分配相同的单击处理程序:

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

Both btnx and btny will both fire this Sub and it will check the button that sent it to see which method to call. btnx和btny都将触发此Sub,它将检查发送它的按钮以查看要调用的方法。

1)Made user control with public string property. 1)使用公共字符串属性进行用户控制。 use view state to store value of that property. 使用视图状态存储该属性的值。

2)Add that user control into your tabs set that property with values like "X" or "Y" or any. 2)将该用户控件添加到选项卡中,以“ X”或“ Y”之类的值设置该属性。

3)On button click check that property with if .. else if .. else or by switch statement and call your SaveText functions variants. 3)在按钮上单击,检查该属性是否为.. else if .. else或通过switch语句,然后调用您的SaveText函数变体。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM