2013-05-01 3 views
2
에 데이터를 추가하는 방법

수동 GRIDVIEW

Dim index_flag as Integer = 0 
GridView1.Rows(index_flag).Cells(1).Text = ds.Tables(0).Rows(index_flag).Item("curr_datetime").ToString 
GridView1.Rows(index_flag).Cells(2).Text = ds.Tables(0).Rows(index_flag).Item("site_id").ToString 
GridView1.Rows(index_flag).Cells(2).Text = ds.Tables(0).Rows(index_flag).Item("site_name").ToString 
GridView1.Rows(index_flag).Cells(3).Text = ds.Tables(0).Rows(index_flag).Item("dc_volt").ToString 
+0

나는 GridView1.Rows이 (index_flag) .Cells (0)'놓친 ... – Sachin

+0

당신은'만약 ds.Tables.Count> 0 AndAlso ds.Tables (0) .Rows를 확인해야'생각 .Count> 0 Then' – Sachin

+0

@ Sac 왜? 간략하게 설명해주십시오. –

답변

0

왜 당신이의 GridView에 데이터 테이블에서 각각의 모든 행을 추가하려고,이 일을 수행하고 다음과 같은 코드에서 Index was out of range. Must be negative and non zero value.로 오류를 표시합니다 ? 가능한 한 GridView.DataSource = DataTable 및 GridView를 사용하십시오. DataBind(). 데이터 표의 데이터를 그리드보기에 추가하는 작업을 수행합니다.

+0

거기에 내 전체 코드를 확인하시기 바랍니다 http ://// stackoverflow.com/questions/16312953/load-grid-data-from-data-base-to-gridview-without-using-binding-method –

+0

그리고 일부 셀이 종속되어 있기 때문에 각 셀에 값을 추가해야합니다. 일부 세포 값 –

+0

당신이 그런 식으로 추가 해야하는 경우 @Mandeep 싱의 답변을 확인하시기 바랍니다. 비록 내가 아직도 당신이 그것을 이런 방식으로하지 말라고 충고 할지라도. 더 좋은 방법으로 어떤 조건에 따라 셀 내용을 렌더링하는 방법이 항상있을 것입니다. Cheeers! – Abhi

0

당신은 GridView1.Rows.Add()의 ASP의 GridView 내가 질문을 검토 한이 링크 을 확인 들어

Dim index_flag as Integer = 0 
GridView.Rows.Add() 
     GridView1.Rows(index_flag).Cells(1).Text = ds.Tables(0).Rows(index_flag).Item("curr_datetime").ToString 

     GridView1.Rows(index_flag).Cells(2).Text = ds.Tables(0).Rows(index_flag).Item("site_id").ToString 
     GridView1.Rows(index_flag).Cells(2).Text = ds.Tables(0).Rows(index_flag).Item("site_name").ToString 
     GridView1.Rows(index_flag).Cells(3).Text = ds.Tables(0).Rows(index_flag).Item("dc_volt").ToString 

UPDATE

, 당신은이 링크 http://www.codeproject.com/Articles/467788/Dynamically-adding-and-deleting-rows-from-ASP-NET

+0

@ Mr. Singh .... Rows.Add()는 DataGridview의 속성입니다. –

+0

질문을 검토했으며,이 링크에서 확인할 수 있습니다. http://www.codeproject.com/Articles/467788/Dynamically-adding-anddeleting- rows-from-ASP-NET –

6
확인할 수 있습니다 누락

나는 datatable을 사용해야한다고 생각합니다. 당신의 필요에 따라 사용자의 데이터 테이블을 준비하고 그리드보기 여기 이 데이터 테이블 바인딩은 C#의 예입니다하지만 당신은 수동으로 VB.NET

 DataTable dt = new DataTable(); 
     dt.Columns.Add("sr_no"); 
     dt.Columns.Add("item_name"); 
     dt.Columns.Add("item_id"); 
     dt.Columns.Add("qty"); 
     dt.Columns.Add("rate"); 
     dt.Columns.Add("total"); 

     var dr = dt.NewRow(); 
     dr["sr_no"] = txtSr.Text; 
     dr["item_name"] = ddlItem.SelectedItem.Text; 
     dr["item_id"] = ddlItem.SelectedValue; 
     dr["qty"] = txtQty.Text; 
     dr["rate"] = txtRate.Text; 
     dr["total"] = int.Parse(txtQty.Text) * int.Parse(txtRate.Text); 

     dt.Rows.Add(dr); 
+1

또한 GridView1.DataSource = dt;를 사용해야합니다. – pbies

0

의 구문과 같은 일을 할 수있는 gridview에 텍스트 상자에서 값을 추가 할 수 있습니다 다음과 같은 방법이 쉽습니다. 그것은 당신을 도울 방법이 시도하십시오이

코드

protected void Button1_Click(object sender, EventArgs e) 
    { 
     DataTable dt = new DataTable(); 
     DataColumn dc = new DataColumn(); 

     if (dt.Columns.Count == 0) 
     { 
      dt.Columns.Add("Title1", typeof(string)); 
      dt.Columns.Add("Title2", typeof(string)); 
     } 

     DataRow NewRow = dt.NewRow(); 
     NewRow[0] = TextBox1.Text; 
     NewRow[1] = TextBox2.Text; 
     dt.Rows.Add(NewRow); 
     GridView1.DataSource = dt; 
     GridView1.DataBind(); 
    } 
2

을 시도합니다.

DataTable dt; 
protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!Page.IsPostBack) 
    { 
     dt = new DataTable(); 
     MakeDataTable(); 
    } 
    else 
    { 
     dt = (DataTable)ViewState["DataTable"]; 
    } 
    ViewState["DataTable"] = dt; 
} 

private void MakeDataTable() 
{ 
    dt.Columns.Add("Name"); 
    dt.Columns.Add("Number"); 
} 

protected void Button2_Click(object sender, EventArgs e) 
{ 
    AddToDataTable(); 
    BindGrid(); 
} 

private void AddToDataTable() 
{ 
    DataRow dr = dt.NewRow(); 
    dr["Name"] = txtName.Text; 
    dr["Number"] = txtNumber.Text; 
    dt.Rows.Add(dr); 
} 

private void BindGrid() 
{ 
    GridView1.DataSource = dt; 
    GridView1.DataBind(); 
}