簡體   English   中英

獲取數據庫表行作為asp.net gridview標頭

[英]Fetch database table rows as asp.net gridview headers

我的SQL Server數據庫中有兩個表(一個用於添加主題,另一個用於添加基於類的在這些主題中獲得的標記)。 我想像excel條目一樣輸入標記,所以我要在gridview的第一列中獲取學生姓名,並在gridview的其他列中填充文本框以輸入標記,如下所示:

在此處輸入圖片說明

現在的問題是,如果班級10的學生“ A”選擇了4個科目,班級5的學生“ B”選擇了5個科目,那么我該如何實現分數輸入模塊呢? gridview中的主題列和學生“ B”僅獲得5個文本框。

這是我的Aspx標記:

<asp:GridView ID="grdMarksEntry" GridLines="None" runat="server" 
     AutoGenerateColumns="false" 
     CssClass="table table-hover table-responsive table-bordered" ShowFooter="true">
    <Columns>
        <asp:TemplateField HeaderText="Sl. No.">
            <ItemTemplate>
                <%#Container.DataItemIndex + 1 %>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:BoundField DataField="name" HeaderText="Name of the student" />
        <asp:TemplateField HeaderText="Subject 1">
            <ItemTemplate>
                <asp:TextBox ID="txtSub1" runat="server" CssClass="form-control"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Subject 2">
            <ItemTemplate>
                <asp:TextBox ID="txtSub2" runat="server" CssClass="form-control"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Subject 3">
            <ItemTemplate>
                <asp:TextBox ID="txtSub3" runat="server" CssClass="form-control"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Subject 4">
            <ItemTemplate>
                <asp:TextBox ID="txtSub4" runat="server" CssClass="form-control"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Subject 5">
            <ItemTemplate>
                <asp:TextBox ID="txtSub5" runat="server" CssClass="form-control"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Subject 6"> 
            <ItemTemplate>
                <asp:TextBox ID="txtSub6" runat="server" CssClass="form-control"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

還有我的C#代碼:

private void bindgrd()
{
    string constr = ConfigurationManager.ConnectionStrings["DatabaseConnect"].ConnectionString;

    using (SqlConnection StudMarksCon = new SqlConnection(constr))
    {
        using (SqlCommand StudMarksCmd = new SqlCommand("select distinct name from studentregistration where class='" + drpClass.SelectedItem.ToString() + "' and div='" + drpDiv.SelectedItem.ToString() + "'"))
        {
            using (SqlDataAdapter sda = new SqlDataAdapter())
            {
                StudMarksCmd.Connection = StudMarksCon;
                sda.SelectCommand = StudMarksCmd;

                using (DataTable dt = new DataTable())
                {
                    sda.Fill(dt);
                    grdMarksEntry.DataSource = dt;
                    grdMarksEntry.DataBind();
                }
            }
        }
    }

您需要根據學生選擇的主題數動態創建文本框數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM