2009-10-01 10 views
0

travail sur C# asp.net vs05. Je prends un combo sur le champ du modèle gridview.problème de contrôle gridview

<asp:GridView ID="GridView3" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource3"> 
      <Columns> 
       <asp:BoundField DataField="StudentID" HeaderText="StudentID" ReadOnly="True" SortExpression="StudentID" /> 
       <asp:TemplateField HeaderText="DivisionName" SortExpression="DivisionName"> 
        <ItemTemplate> 
         <asp:Label ID="lblDivisionName" runat="server" Text='<%# Bind("DivisionName") %>' 
          Width="116px"></asp:Label><br /> 
         <asp:DropDownList ID="DropDownList1" runat="server"> 
         </asp:DropDownList> 
        </ItemTemplate> 
       </asp:TemplateField> 
       <asp:TemplateField HeaderText="StudentName" SortExpression="StudentName"> 
        <EditItemTemplate> 
         <asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("StudentName") %>'></asp:TextBox> 
        </EditItemTemplate> 
        <ItemTemplate> 
         <asp:Label ID="Label2" runat="server" Text='<%# Bind("StudentName") %>'></asp:Label> 
        </ItemTemplate> 
       </asp:TemplateField> 
       <asp:ButtonField ButtonType="Button" Text="Update" /> 
      </Columns> 
     </asp:GridView> 

Maintenant, je veux remplir ce combo par le code ci-dessous?

DropDownList1.DisplayMember = "CommercialRegionName"; 
      foreach (object oItem in collection) 
      { 
       DropDownList1.Items.Add(oItem); 
      } 

comment obtenir l'ID de contrôle combo de la grille

Répondre

1

Vous pouvez utiliser le code suivant: Set OnRowDataBound du gridview dans ASPX comme OnRowDataBound = "GridView3_RowDataBound"

Puis placez le code suivant dans la page aspx.cs.

protected void GridView3_RowDataBound(object sender, GridViewRowEventArgs e) 
    { 
     if (e.Row.RowType == DataControlRowType.DataRow) 
     { 
      DropDownList DropDownList1 =(DropDownList) e.Row.FindControl("DropDownList1"); 
      DropDownList1.DisplayMember = "CommercialRegionName"; 
      foreach (object oItem in collection) 
      { 
       DropDownList1.Items.Add(oItem); 
      } 

     } 
    } 
Questions connexes