C# 如何在gridview中获取在下拉选择索引中生成的texbox的动态值

C# 如何在gridview中获取在下拉选择索引中生成的texbox的动态值,c#,asp.net,C#,Asp.net,我在gridview中创建了动态文本框,它是在下拉菜单中生成的,选定的索引已更改,但现在我想在数据库中保存该文本框值,但如何保存?一行中有五个动态文本框现在如何在提交按钮上获取该值在每行单击有人能帮我吗 <asp:GridView ID="GridViewclass" runat="server" OnRowDataBound="GridViewclass_RowDataBound" OnDataBound="GridViewclass_DataBound" AutoGe

我在gridview中创建了动态文本框,它是在下拉菜单中生成的,选定的索引已更改,但现在我想在数据库中保存该文本框值,但如何保存?一行中有五个动态文本框现在如何在提交按钮上获取该值在每行单击有人能帮我吗

<asp:GridView ID="GridViewclass" runat="server" OnRowDataBound="GridViewclass_RowDataBound"
    OnDataBound="GridViewclass_DataBound"
    AutoGenerateColumns="False" AutoGenerateSelectButton="true"
    HeaderStyle-BackColor="#174A63" HeaderStyle-ForeColor="white" AllowPaging="true" Font-Size="14px"
    Style="margin-left: 16%;" PageSize="15" Width="300px">
    <SelectedRowStyle CssClass="selectedRowStyle" />

    <Columns>
        <asp:BoundField DataField="RowNumber" HeaderText="Row Number" />
        <asp:TemplateField HeaderText="Header 1">
            <ItemTemplate>
                <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Header 2">
            <ItemTemplate>
                <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Header 3">
            <ItemTemplate>
                <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Header 4">
            <ItemTemplate>
                <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Header 5">
            <ItemTemplate>
                <asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

//代码隐藏

<asp:GridView ID="GridViewclass" runat="server" OnRowDataBound="GridViewclass_RowDataBound"
    OnDataBound="GridViewclass_DataBound"
    AutoGenerateColumns="False" AutoGenerateSelectButton="true"
    HeaderStyle-BackColor="#174A63" HeaderStyle-ForeColor="white" AllowPaging="true" Font-Size="14px"
    Style="margin-left: 16%;" PageSize="15" Width="300px">
    <SelectedRowStyle CssClass="selectedRowStyle" />

    <Columns>
        <asp:BoundField DataField="RowNumber" HeaderText="Row Number" />
        <asp:TemplateField HeaderText="Header 1">
            <ItemTemplate>
                <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Header 2">
            <ItemTemplate>
                <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Header 3">
            <ItemTemplate>
                <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Header 4">
            <ItemTemplate>
                <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Header 5">
            <ItemTemplate>
                <asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>
protected void ddlClassUnits_SelectedIndexChanged(object sender, EventArgs e)
{
    try
    {
        int createrows = 0;
        int GroupId = Convert.ToInt32(ddlClassUnits.SelectedValue);
        if (GroupId == 0)
        {
            ClearContentControls(4);
        }
        else
        {
            if (GroupId == 1)
            {
                createrows = 1;
            }
            if (GroupId == 2)
            {
                createrows = 2;
            }

            GridViewclass.Visible = true;
            DataTable dt = new DataTable();
            DataRow dr = null;
            dt.Columns.Add(new DataColumn("RowNumber", typeof(string)));
            dt.Columns.Add(new DataColumn("Column1", typeof(string)));
            dt.Columns.Add(new DataColumn("Column2", typeof(string)));
            dt.Columns.Add(new DataColumn("Column3", typeof(string)));
            dt.Columns.Add(new DataColumn("Column4", typeof(string)));
            dt.Columns.Add(new DataColumn("Column5", typeof(string)));

            for (int i = 0; i < createrows; i++)
            {
                dr = dt.NewRow();
                dr["RowNumber"] = i + 1; ;
                dr["Column1"] = string.Empty;
                dr["Column2"] = string.Empty;
                dr["Column3"] = string.Empty;
                dr["Column4"] = string.Empty;
                dr["Column5"] = string.Empty;
                dt.Rows.Add(dr);
            }

            GridViewclass.DataSource = dt;
            GridViewclass.DataBind();
            ViewState["CurrentTable"] = dt;
        }
    }
    catch (Exception ex)
    {
    }
}
protectedvoid ddlclass units\u SelectedIndexChanged(对象发送方,事件参数e)
{
尝试
{
int createrows=0;
int GroupId=Convert.ToInt32(ddlClassUnits.SelectedValue);
if(GroupId==0)
{
ClearContentControls(4);
}
其他的
{
if(GroupId==1)
{
createrows=1;
}
if(GroupId==2)
{
createrows=2;
}
GridViewclass.Visible=true;
DataTable dt=新的DataTable();
数据行dr=null;
添加(新的数据列(“行数”,typeof(字符串));
Add(新的数据列(“Column1”,typeof(string));
Add(新的数据列(“Column2”,typeof(string));
Add(新的数据列(“Column3”,typeof(string));
Add(新的数据列(“Column4”,typeof(string));
添加(新数据列(“第5列”,类型为(字符串));
对于(int i=0;i

现在,如何在“提交”按钮中获取动态文本框值单击

尝试枚举GridViewclass。控制集合,可能检查textbox类型的对象。我不明白你说什么,我在该字段是新手,所以…帮助
<asp:GridView ID="GridViewclass" runat="server" OnRowDataBound="GridViewclass_RowDataBound"
    OnDataBound="GridViewclass_DataBound"
    AutoGenerateColumns="False" AutoGenerateSelectButton="true"
    HeaderStyle-BackColor="#174A63" HeaderStyle-ForeColor="white" AllowPaging="true" Font-Size="14px"
    Style="margin-left: 16%;" PageSize="15" Width="300px">
    <SelectedRowStyle CssClass="selectedRowStyle" />

    <Columns>
        <asp:BoundField DataField="RowNumber" HeaderText="Row Number" />
        <asp:TemplateField HeaderText="Header 1">
            <ItemTemplate>
                <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Header 2">
            <ItemTemplate>
                <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Header 3">
            <ItemTemplate>
                <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Header 4">
            <ItemTemplate>
                <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Header 5">
            <ItemTemplate>
                <asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>