2

ASP.NETのGridViewからDataTableに入力するにはどうすればよいですか?

4

4 に答える 4

10

簡単に、あなたはこのようにすることができます:

BindingSource bindingSource = (BindingSource )yourGridView.DataSource;
DataTable yourDataTable= (DataTable ) bindingSource .DataSource;

別の方法では、次のように行うことができます。

DataTable yourDataTable = yourGridView.DataSource as DataTable
于 2012-08-15T08:43:57.940 に答える
2
 I solved like this
           if (myGridView.Rows.Count > 0)
            {
                var dt = new DataTable();
                dt.Columns.Add("Column1", typeof(string));
                dt.Columns.Add("Column2", typeof(Int64));
                dt.Columns.Add("Column3", typeof(string));

                foreach (GridViewRow row in gd_endYearSchool.Rows)
                {
                    var id = row.Cells[1].Text;
         //for find textbox
          var tb1 = row.Cells[2].FindControl("tbNr") as TextBox;
                    int nrord = 0;
                    if (tb1 != null)
                    {
                        var ord = tb1.Text;
                        if (!Int64.TryParse(ord, out nrord))
                        {
                            nrord = 0;
                        }
                    }
                    var text=row.Cell[3].text;
                    dt.Rows.Add(id,nrord,text);
                }

            }
于 2012-08-15T12:05:54.350 に答える
1

私はこのようにします、私はこれがあなたを助けると思います。

public void Data_table()
{
    Session["Data"] = "";
    DataTable dt = new DataTable();
    //Add Columns to the datatable
    dt.Columns.Add("c1");
    dt.Columns.Add("c2");
    dt.Columns.Add("c3");
    //Define a datarow for the datatable dt
    DataRow dr = dt.NewRow();
    //Now add the datarow to the datatable
    Session["Data"] = dt;
    RadGrid1.DataSource = dt;
    RadGrid1.Rebind();
}

protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{            
    if (((System.Data.DataTable)(Session["Data"])).Rows.Count.ToString() != "")
    {
        RadGrid1.DataSource = Session["Data"];
    }
}

ありがとうございました..、

于 2012-08-15T12:12:17.843 に答える
1

グリッドビューからデータテーブルにforeachを入力できます

于 2012-08-15T11:33:28.270 に答える