第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

通過單擊 asp.net 中的按鈕在網(wǎng)格中添加多行

通過單擊 asp.net 中的按鈕在網(wǎng)格中添加多行

C#
呼喚遠(yuǎn)方 2023-07-09 15:20:52
我需要通過單擊按鈕在 Gridview 中動(dòng)態(tài)添加&ldquo;n&rdquo;行和&ldquo;m&rdquo;列(行包含 m 個(gè)文本框)。當(dāng)用戶點(diǎn)擊按鈕時(shí),一個(gè)特定的整數(shù)值被初始化為一個(gè)變量,該變量是所需的行數(shù)。假設(shè)它的值為 8,因此已動(dòng)態(tài)創(chuàng)建包含 m 個(gè)文本框的 8 行。對(duì)于多行的功能,我只是添加了一些約束并注釋了一些不需要的代碼,如下代碼所示:?private void SetInitialRow()? ? {? ? ? ? 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)));? ? ? ? dr = dt.NewRow();? ? ? ? dr["RowNumber"] = 1;? ? ? ? dr["Column1"] = string.Empty;? ? ? ? dr["Column2"] = string.Empty;? ? ? ? dr["Column3"] = string.Empty;? ? ? ? dt.Rows.Add(dr);? ? ? ? //Store the DataTable in ViewState? ? ? ? ViewState["CurrentTable"] = dt;? ? ? ? Gridview1.DataSource = dt;? ? ? ? Gridview1.DataBind();? ? }? ? private void AddNewRowToGrid()? ? {? ? ? ? try? ? ? ? {? ? ? ? ? ? int j = 8, rowIndex = 0;? ? ? ? ? ? //if (ViewState["CurrentTable"] != null)? ? ? ? ? ? //{? ? ? ? ? ? DataTable dtCurrentTable = (DataTable)ViewState["CurrentTable"];? ? ? ? ? ? DataRow drCurrentRow = null;? ? ? ? ? ? if (dtCurrentTable.Rows.Count > 0)? ? ? ? ? ? {? ? ? ? ? ? ? ? for (int i = 1; i <= j; i++)?調(diào)試后出現(xiàn)錯(cuò)誤:索引超出范圍。必須為非負(fù)數(shù)且小于集合的大小。
查看完整描述

2 回答

?
手掌心

TA貢獻(xiàn)1942條經(jīng)驗(yàn) 獲得超3個(gè)贊

嘗試這個(gè)


 private void SetInitialRow()

       {

           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)));

           dr = dt.NewRow();

           dr["RowNumber"] = 1;

           dr["Column1"] = string.Empty;

           dr["Column2"] = string.Empty;

           dr["Column3"] = string.Empty;

           dt.Rows.Add(dr);

           ViewState["CurrentTable"] = dt;


           Gridview1.DataSource = dt;

           Gridview1.DataBind();

       }

       private void AddNewRowToGrid()

       {

           try

           {

               int j = 8, rowIndex = 0;


               DataTable dtCurrentTable = (DataTable)ViewState["CurrentTable"];

               DataRow drCurrentRow = null;


               if (dtCurrentTable.Rows.Count > 0)

               {

                   for (int i = 1; i <= j; i++)

                   {


                       //extract the TextBox values

                     TextBox  box1 = (TextBox)Gridview1.Rows[rowIndex].Cells[1].FindControl("TextBox1");

                     TextBox  box2 = (TextBox)Gridview1.Rows[rowIndex].Cells[2].FindControl("TextBox2");

                     TextBox  box3 = (TextBox)Gridview1.Rows[rowIndex].Cells[3].FindControl("TextBox3");


                       drCurrentRow = dtCurrentTable.NewRow();

                       drCurrentRow["RowNumber"] = i + 1;


                       dtCurrentTable.Rows[i - 1]["Column1"] = box1.Text;

                       dtCurrentTable.Rows[i - 1]["Column2"] = box2.Text;

                       dtCurrentTable.Rows[i - 1]["Column3"] = box3.Text;

                       dtCurrentTable.Rows.Add(drCurrentRow);

                   }

                  // dtCurrentTable.Rows.Add(drCurrentRow);

                   ViewState["CurrentTable"] = dtCurrentTable;


                   Gridview1.DataSource = dtCurrentTable;

                   Gridview1.DataBind();

               }

           }

           catch (Exception ex)

          {


           }


       protected void Page_Load(object sender, EventArgs e)

       {


           if (!Page.IsPostBack)

           {

               SetInitialRow();

           }

       }

       protected void ButtonAdd_Click(object sender, EventArgs e)

       {

           AddNewRowToGrid();

       }


查看完整回答
反對(duì) 回復(fù) 2023-07-09
?
互換的青春

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個(gè)贊

希望這能解決您的問題


頁面加載


  protected void Page_Load(object sender, EventArgs e)

    {


        if (!Page.IsPostBack)

        {

            load();

        }

    }

加載()


protected void load()

    {

     if (ViewState["CurrentData"] == null)

      {

       DataTable dt = (DataTable)ViewState["CurrentData"];

       BindGrid(1);

      }

    }

綁定網(wǎng)格()


 private void BindGrid(int rowcount)

    {

            DataTable dt = new DataTable();

            DataRow dr;

            DataColumn RcAccCode, RcAccAccount, RcAmount, RcAccId;

            int temp = 0;

            int a = 0;

            RcAccCode = new DataColumn("RcAccCode", Type.GetType("System.String"));

            RcAccAccount = new DataColumn("RcAccAccount", Type.GetType("System.String"));

            RcAmount = new DataColumn("RcAmount", Type.GetType("System.String"));

            RcAccId = new DataColumn("RcAccId", Type.GetType("System.String"));

            dt.Columns.Add(RcAccCode);

            dt.Columns.Add(RcAccAccount);

            dt.Columns.Add(RcAmount);

            dt.Columns.Add(RcAccId);

            TextBox TextBox1 = new TextBox();

            TextBox TextBox2 = new TextBox();

            TextBox TextBox3 = new TextBox();

                if (ViewState["CurrentData"] != null)

                {

                    dt = (DataTable)ViewState["CurrentData"];

                    if (dt.Rows.Count > 0)

                    {

                        dr = dt.NewRow();

                        dr[0] = dt.Rows[0][0].ToString();

                    }


                    for (int i = dt.Rows.Count - 1; i >= 0; i--)

                    {

                        DataRow dr1 = dt.Rows[i];

                        a = Convert.ToInt32(dr1["RcAccCode"].ToString());

                        break;

                    }

                    if (temp == 0)

                    {

                        dr = dt.NewRow();

                        dr[0] = a + 1;

                        dr[1] = TextBox1.Text;

                        dr[2] = TextBox2.Text;

                        dr[3] = TextBox3.Text;

                        dt.Rows.Add(dr);   

                    }

                }

                else

                {

                    dr = dt.NewRow();

                    dr[0] =1;

                    dr[1] = TextBox1.Text;

                    dr[2] = TextBox2.Text;

                    dr[3] = TextBox3.Text;

                    dt.Rows.Add(dr);

                }

            // If ViewState has a data then use the value as the DataSource

            if (ViewState["CurrentData"] != null)

            {

                Gridview1.DataSource = (DataTable)ViewState["CurrentData"];

                Gridview1.DataBind();     

            }

            else

            {

                // Bind GridView with the initial data assocaited in the DataTable

                Gridview1.DataSource = dt;

                Gridview1.DataBind();

            }

            // Store the DataTable in ViewState to retain the values

            ViewState["CurrentData"] = dt;

    }

按鈕點(diǎn)擊事件


    protected void ButtonAdd_Click(object sender, EventArgs e)

    {

        DataTable dt = (DataTable)ViewState["CurrentData"];

        int count = dt.Rows.Count;

        BindGrid(count);

    }


查看完整回答
反對(duì) 回復(fù) 2023-07-09
  • 2 回答
  • 0 關(guān)注
  • 153 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)