簡體   English   中英

向gridView添加行

[英]Adding rows to gridView

我想在插入的行之后添加新行。 我有一個按鈕,顯示帶有一些DropDownLists和Textboxes的引導程序模式。 單擊模式中的按鈕時,應將模式中的數據插入表中。 問題是,當我嘗試添加新行時,它將替換當前行。 我在做什么錯? 這是我的代碼示例:.cs:

protected void addTrip_Click(object sender, EventArgs e)
    {
        DataTable dt = new DataTable();

        dostawca = DropDownDostawca.SelectedValue.ToString();
        cel = txtCel.InnerText;
        krajZagr = "";
        kraj = DropDownKraj.SelectedValue.ToString();
        miasto = txtMiasto.Text;
        if(rbKraj.Checked == true)
        {
            krajZagr = "Krajowa";
        }
        if(rbZag.Checked == true)
        {
            krajZagr = "Zagraniczna";
        }

        if(cel=="" || miasto=="" || kraj=="" || dostawca=="" )
        {
            ClientScript.RegisterStartupScript(this.GetType(), "alert", "ShowPopup2();", true);

        }
        else
        {
            if(gridViewTrips.Columns.Count == 0)
            {

                DataRow dr = dt.NewRow();
                DataColumn dc = new DataColumn("DO_KOGO");
                DataColumn dc2 = new DataColumn("CEL");
                DataColumn dc3 = new DataColumn("KRAJOWA_ZAGRANICZNA");
                DataColumn dc4 = new DataColumn("KRAJ");
                DataColumn dc5 = new DataColumn("MIASTO");

                dt.Columns.Add(dc);
                dt.Columns.Add(dc2);
                dt.Columns.Add(dc3);
                dt.Columns.Add(dc4);
                dt.Columns.Add(dc5);

                dr["DO_KOGO"] = dostawca;
                dr["CEL"] = cel;
                dr["KRAJOWA_ZAGRANICZNA"] = krajZagr;
                dr["KRAJ"] = kraj;
                dr["MIASTO"] = miasto;

                dt.Rows.Add(dr);
                gridViewTrips.DataSource = dt;
                gridViewTrips.DataBind();
            }
            else
            {
                DataRow dr = dt.NewRow();
                dr["DO_KOGO"] = dostawca;
                dr["CEL"] = cel;
                dr["KRAJOWA_ZAGRANICZNA"] = krajZagr;
                dr["KRAJ"] = kraj;
                dr["MIASTO"] = miasto;

                dt.Rows.Add(dr);
                gridViewTrips.DataSource = dt;
                gridViewTrips.DataBind();
            }





        }


    }

.aspx:

<asp:GridView runat="server" id="gridViewTrips">
            <EmptyDataTemplate>
                <asp:Table ID="TableTrips" runat="server" CssClass="table table-bordered">
            <asp:TableHeaderRow>
                <asp:TableHeaderCell>Do kogo</asp:TableHeaderCell>
                <asp:TableHeaderCell>Cel</asp:TableHeaderCell>
                <asp:TableHeaderCell>Krajowa/Zagraniczna</asp:TableHeaderCell>
                <asp:TableHeaderCell>Kraj</asp:TableHeaderCell>
                <asp:TableHeaderCell>Miasto</asp:TableHeaderCell>

            </asp:TableHeaderRow>

        </asp:Table>
            </EmptyDataTemplate>

        </asp:GridView>

編輯:現在,當我調試項目時,如果看到我所擁有的內容,我會看到:“ if(gridViewTrips.Columns.Count == 0)”插入一行后向我顯示我沒有任何列。 有什么想法嗎?

暫無
暫無

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

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