<asp:GridView ID="GridView" runat="server" AutoGenerateColumns="False">
        <Columns>
           <asp:TemplateField>
           <HeaderTemplate>
           aaa
           </HeaderTemplate>
           <ItemTemplate>
               <asp:DropDownList ID="ddl" runat="server">
               </asp:DropDownList>
           </ItemTemplate>
           </asp:TemplateField> 
        </Columns>
</asp:GridView>上面那个GridView中怎样绑定下面那个集合了 测试成功了马上结贴:
 protected void Page_Load(object sender, EventArgs e)
    {
        List<StuInfo> lst = new List<StuInfo>();
        StuInfo stu = new StuInfo();
        stu.Stuid = "1";
        stu.Stuname = "aaa";
        lst.Add(stu);
        stu = new StuInfo();
        stu.Stuid = "2";
        stu.Stuname = "bbb";
        lst.Add(stu);
        stu = new StuInfo();
        stu.Stuid = "3";
        stu.Stuname = "ccc";
        lst.Add(stu);
        
    }
}public class StuInfo
{
    private string _stuid;    public string Stuid
    {
        get { return _stuid; }
        set { _stuid = value; }
    }
    private string _stuname;    public string Stuname
    {
        get { return _stuname; }
        set { _stuname = value; }
    }

解决方案 »

  1.   


    DropDownList text 绑定 stuname
    value 绑定 stuid
      

  2.   

    那 GridView 想绑定什么
      

  3.   

    <asp:TemplateField HeaderText=""> 
                              <EditItemTemplate> 
                                  <asp:DropDownList ID="ddl" runat="server" TabIndex="-1" CssClass="not-null" Width="200px" AutoPostBack="True" OnSelectedIndexChanged="ddl_SelectedIndexChanged" > 
                                  </asp:DropDownList> 
                              </EditItemTemplate>                          
                              <ItemTemplate> 
                              </ItemTemplate> 
                              <ItemStyle Width="250px" CssClass="GVCellStyle" /> 
                              <HeaderStyle Width="250px" /> 
                          </asp:TemplateField> 
        protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e) 
        { 
            if (e.Row.RowState == DataControlRowState.Edit || e.Row.RowState == (DataControlRowState.Alternate | DataControlRowState.Edit)) 
            { 
                DropDownList ddl = (DropDownList)e.Row.FindControl("ddl"); 
                if (ddl != null) 
                { 
              //绑定数据 
                } 
            } 
        } 
      

  4.   

    百度 也专业点if (e.Row.RowState == DataControlRowState.Edit || e.Row.RowState == (DataControlRowState.Alternate | DataControlRowState.Edit)) 
      

  5.   

    <asp:TemplateField HeaderText=""> 
                              <EditItemTemplate> 
                                  <asp:DropDownList ID="ddl" runat="server" TabIndex="-1" CssClass="not-null" Width="200px" AutoPostBack="True" OnSelectedIndexChanged="ddl_SelectedIndexChanged" > 
                                  </asp:DropDownList> 
                              </EditItemTemplate>                          
                              <ItemTemplate> 
                              </ItemTemplate> 
                              <ItemStyle Width="250px" CssClass="GVCellStyle" /> 
                              <HeaderStyle Width="250px" /> 
                          </asp:TemplateField> 
        protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e) 
        { 
            if (e.Row.RowState == DataControlRowState.Edit || e.Row.RowState == (DataControlRowState.Alternate | DataControlRowState.Edit)) 
            { 
                DropDownList ddl = (DropDownList)e.Row.FindControl("ddl"); 
                if (ddl != null) 
                { 
              //绑定数据 
                } 
            } 
        } 
      

  6.   


    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
        <asp:GridView ID="gv" AutoGenerateColumns="false" runat="server">
        <Columns>
        <asp:TemplateField>
        <HeaderTemplate> 
              aaa 
              </HeaderTemplate> 
        <ItemTemplate>
        <asp:DropDownList ID="ddl" runat="server" DataSource='<%#GetDataSource() %>' DataTextField="Stuname" DataValueField="Stuid"> 
                  </asp:DropDownList>
        </ItemTemplate>
        </asp:TemplateField>
        </Columns>
        </asp:GridView>
        </form>
    </body>
    </html>protected List <StuInfo> GetDataSource()
        {
            List <StuInfo> lst = new List <StuInfo>(); 
            StuInfo stu = new StuInfo(); 
            stu.Stuid = "1"; 
            stu.Stuname = "aaa"; 
            lst.Add(stu); 
            stu = new StuInfo(); 
            stu.Stuid = "2"; 
            stu.Stuname = "bbb"; 
            lst.Add(stu); 
            stu = new StuInfo(); 
            stu.Stuid = "3"; 
            stu.Stuname = "ccc"; 
            lst.Add(stu); 
            return lst;
        }    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                gv.DataSource = new string[] { "", "", "" };
                gv.DataBind();
            }
        }public class StuInfo
    {
        private string _stuid;    public string Stuid
        {
            get { return _stuid; }
            set { _stuid = value; }
        }
        private string _stuname;    public string Stuname
        {
            get { return _stuname; }
            set { _stuname = value; }
        }
    }
    要闪人了,写个简单的DEMO
      

  7.   

    gv.DataSource=newstring[] {"","","" };
     这个是什么意思 为什么要3个""
      

  8.   

    gv.DataSource=newstring[] {"","","" }; 
    这个是什么意思 为什么要3个"" 随便绑定的, 为了查看效果
      

  9.   

    DataControlRowState.Edit没有环境就写的,就写这个?