我想从用户控件中获取值
我试过但循环出来了
代码:
.aspx
<asp:Repeater ID="rpt1" runat="server">
<ItemTemplate>
</ItemTemplate>
</asp:Repeater>
<asp:Button ID="btnSaveVisa" Text="Save" runat="server" OnClick="btnSaveVisa_Click" />   
添加VisaUserControl.ascx
 <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="AddVisaControl.ascx.cs" EnableViewState="false" Inherits="Pyramid.AddVisaControl" %>
<div id="divreg" runat="server">
<table id="tbl" runat="server">
    <tr>
    <td>
        <asp:Label ID="lbl2" runat="server"></asp:Label>
    </td>
</tr>
<tr>
<td> Visa Number:</td>
<td><asp:TextBox ID="txtUser" Width="160px" runat="server"/></td>
<td> Country Name:</td>
<td><asp:DropDownList ID="dropCountry" Width="165px" runat="server"></asp:DropDownList></td>
</tr>
<tr>
<td> Type of Visa:</td>
<td><asp:DropDownList ID="dropVisa" Width="165px" runat="server"></asp:DropDownList></td>
<td> Type of Entry:</td>
<td><asp:DropDownList ID="dropEntry" Width="165px" runat="server"></asp:DropDownList></td>
</tr>
<tr>
<td> Expiry Date</td>
<td>
</td>
</tr>
</table>
</div>
.aspx.cs
public void generateControls()
    {
        for (int i = 0; i < int.Parse(ViewState["ControlCount"].ToString()); i++)
        {
            Label lbl = new Label();
            string count = Convert.ToString(i + 1);
            lbl.Text = "Visa" + count;
            rpt1.Controls.Add(lbl);
            rpt1.Controls.Add(LoadControl("VisaUserControl.ascx"));
            rpt1.Controls.Add(new LiteralControl("<BR>"));
        }
    }
    protected void btnAddVisa_Click(object sender, EventArgs e)
    {
        ViewState["ControlCount"] = int.Parse(ViewState["ControlCount"].ToString()) + 1;
        generateControls();
    }
//这是当我从控制中读取值时出现的问题循环出来
    private void saveData()
    {
        for (int i = 0; i < this.rpt1.Controls.Count; i++)
        {
            if (this.rpt1.Controls[i] is TextBox)
            {
                TextBox txtserial = (TextBox)this.rpt1.Controls[i];
                string value = txtserial.Text;
            }
        }
    }
    protected void btnSaveVisa_Click(object sender, EventArgs e)
    {
       saveData();
    }

有任何想法吗?提前致谢