.aspx
-----------------------------
<form id="Form1" method="post" runat="server">
<asp:repeater id="Repeater1" runat="server">
<ItemTemplate>
<asp:TextBox id="TextBoxa"  runat="server"></asp:TextBox>
<%# DataBinder.Eval(Container.DataItem, "ProductNumber")%>
<%# DataBinder.Eval(Container.DataItem, "ProductName") %>
<%# DataBinder.Eval(Container.DataItem, "Spec")%>
<%# DataBinder.Eval(Container.DataItem, "Unit")%>
<%# DataBinder.Eval(Container.DataItem,"Price", "{0:c}") %>
<br>
</ItemTemplate>
</asp:repeater>
<asp:Button id="Button1" style="Z-INDEX: 101; LEFT: 416px; POSITION: absolute; TOP: 352px" runat="server"
Text="Button"></asp:Button></form>
--------
.cs SqlConnection myConnection = new SqlConnection(ConfigurationSettings.AppSettings["strConn"]);
protected System.Web.UI.WebControls.Button Button1;
protected System.Web.UI.WebControls.Repeater Repeater1;
protected System.Web.UI.WebControls.TextBox TextBoxa;

private void Page_Load(object sender, System.EventArgs e)
{
string strSql = "SELECT ProductNumber,ProductName,Spec,Unit,Price FROM [sxProduct]";
SqlDataAdapter myCommand = new SqlDataAdapter(strSql, myConnection);
DataSet ds = new DataSet();
myCommand.Fill(ds);
DataView source = new DataView(ds.Tables[0]);
Repeater1.DataSource = source;
Repeater1.DataBind();
} private void Button1_Click(object sender, System.EventArgs e)
{
//如何得到TextBox值
}

解决方案 »

  1.   

    你是不是想把数据库里的字段值显示在textbox里?
    如果是的话,应该这样:
    <asp:TextBox id="TextBoxa"  runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "ProductNumber")%>'></asp:TextBox>
    然后,在repeater的ItemDataBind事件里,用e.Item.FindControl("TextBoxa")取它的值。
      

  2.   

    方法1:
    <asp:TextBox id="TextBoxa" runat="server" ></asp:TextBox>
    repeater的ItemDataBind事件里,用e.Item.FindControl("TextBoxa")
      

  3.   

    我不是想把数据库里的字段值显示在textbox里,我要在浏览器端输入,并获取输入值。我要在 <ItemTemplate>
    <asp:TextBox id=mytext />
     </ItemTemplate> 
    在浏览器端输入,并获取输入值。
    用楼上二位的方法行不通,麻烦指点,在很多论坛发了贴问题都没有解决,已经快一周了吃不下饭了!!
      

  4.   

    <%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>Untitled Page</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
    <asp:Repeater id="Repeater1" runat="server">
                 
              <HeaderTemplate>
                 <table border="1">
              </HeaderTemplate> 
              <ItemTemplate>
                 <tr>
                    <td> <%# ((MyItem)Container.DataItem).ID %> </td>
                    <td> <%# ((MyItem)Container.DataItem).Name %> </td>
                    <td>
                    <asp:TextBox Visible="true" ID="info" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"Name") %>'></asp:TextBox>
                    </td>
                 </tr>
              </ItemTemplate> 
              <FooterTemplate>
                 </table>
              </FooterTemplate>             
           </asp:Repeater>
        </div>
        </form>
    </body>
    </html>==============================================
    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Collections;public partial class _Default : System.Web.UI.Page 
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!this.Page.IsPostBack)
            {
                IList myList = new ArrayList();
                for (int i = 0; i < 10; i++)
                {
                    MyItem item = new MyItem();
                    item.ID = i;
                    item.Name = "qixin" + i;
                    myList.Add(item);
                }
                this.Repeater1.DataSource = myList;
                this.Repeater1.DataBind();
            }
            int count = this.Repeater1.Items.Count;
            for (int i = 0; i < count; i++)
            {
                RepeaterItem item = this.Repeater1.Items[i];
                TextBox text = (TextBox)item.FindControl("info");
                Response.Output.WriteLine(text.Text);
            }    }
        protected void Button1_Click(object sender, EventArgs e)
        {        
        }
    }
    class MyItem
    {
        private int id;
        private string name;
        public int ID
        {
            get
            {
                return id;
            }
            set
            {
                id = value;
            }
        }
        public string Name
        {
            get
            {
                return name;
            }
            set
            {
                name = value;
            }
        }
    }