2012-02-08 55 views
0

我有一個TextBox,GridView和Button,如「txtCount」,「gvCount」和「btnCount」。如何根據TextBox值動態添加行到GridView?

的gvCount以下幾列

<Columns> 
     <asp:TemplateField Visible="false"> 
     <ItemTemplate> 
     <asp:Label ID="lblRTDetailID" runat="server" Text='<%# Bind("RTDetailID") %>'></asp:Label> 
     </ItemTemplate> 
     </asp:TemplateField> 
     <asp:TemplateField HeaderText="Assy. No."> 
     <ItemTemplate> 
     <asp:TextBox ID="txtgvAssyNo" runat="server" Text='<%# Bind("AssyNo") %>'></asp:TextBox> 
     </ItemTemplate> 
     </asp:TemplateField> 
     <asp:TemplateField HeaderText="Position"> 
     <ItemTemplate> 
     <asp:DropDownList ID="ddlgvPos" runat="server" Text='<%# Bind("Position") %>'> 
     </asp:DropDownList> 
     </ItemTemplate> 
     </asp:TemplateField> 
</Columns> 

如果文本框 「txtCount」 具有文本 「10」。點擊按鈕「btnCount」後,10行將被添加到GridView中。同樣,我需要根據TextBox值向GridView添加行。這個怎麼做?

+0

那10行中的值應該是多少? – Magnus 2012-02-08 13:07:59

+0

@Magnus:所有的TextBox值都應該是空的,DropDownlist應該顯示SelectedValue =「-1」; – thevan 2012-02-08 13:10:32

回答

1
gv.DataSource = Enumerable.Range(0, int.Parse(txtCount.Value)) 
       .Select (e => new 
       { 
        RTDetailID = "", 
        AssyNo = "", 
        Position = "-1" 
       }); 
gv.DataBind(); 
1

您可以隨時使用的DataTable。使用從0開始到文本框的文本-1的for循環將數據行添加到數據表。然後將數據表設置爲Gridview數據源。