2013-12-23 2 views
0
를 표시하지 않는 것

내 gridview에 소스 코드 내 gridview에 데이터가 표시되지 않는 이유나는 간단한 gridview에,이 데이터

bindGridView(ds.Tables[0], g1, lblErrorActivityGrid, lblActivityGridCount); 

private void bindGridView(DataTable dt, GridView grd, Label lblError, Label GrdRowCount) 
    { 
     grd.DataSource = dt; 
     grd.DataBind(); 
    } 

제 질문은,

<asp:GridView ID="g1" runat="server"></asp:GridView> 

내 코드 뒤에 다음되어 있나요? 데이터 세트를 사용하고 있으며 수동으로 데이터 세트에 데이터를 추가 한 다음 0 번째 테이블에서 테이블을 반환합니다.

도와주세요. 사전

+0

테이블에 데이터가 있는지 확인 했습니까? – Saurabh

+0

예 내 테이블에 데이터가 있습니다 –

답변

0

에 한번 감사드립니다

이 테이블에 데이터가 있는지 확인합니다 ..

grd.DataSource = dt.DefaultView;

당신이 DataTable의에서 GRIDVIEW로보기를 설정해야합니다 설정합니다. 마크 업에서

+0

grd.DataSource를 시도했습니다 = dt.DefaultView; 여전히 작동하지 않습니다. –

2

AutogenerateColumns="true"을 설정 : 내가있는 gridview이 내 마크 업에서

:

<asp:GridView ID="g1" AutoGenerateColumns= "true" runat="server"></asp:GridView> 

가 여기에 내가 코드를 테스트 한 방법입니다. 그리드는 브라우저에서 보여줍니다있어 여기

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
    { 
     DataSet ds = new DataSet(); 
     DataTable dt = new DataTable(); 
     dt.Columns.Add("Column1", typeof(string)); 
     dt.Columns.Add("Column2", typeof(string)); 
     ds.Tables.Add(dt); 
     for (int i=0; i<5; i++) 
     { 
      DataRow nw = ds.Tables[0].NewRow(); 
      nw[0] = (i + 1).ToString(); 
      nw["Column1"] = (i + 1).ToString(); 
      nw["Column2"] = String.Format("Item {0}", i); 
      ds.Tables[0].Rows.Add(nw); 
     } 
     bindGridView(ds.Tables[0], g1, lblErrorActivityGrid, lblActivityGridCount); 
    } 
} 


private void bindGridView(DataTable dt, GridView grd, Label lblError, Label GrdRowCount) 
{ 
    grd.DataSource = dt; 
    grd.DataBind(); 
} 

: 그리고 내 코드에서

<!DOCTYPE html> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
    <asp:GridView ID="g1" AutoGenerateColumns= "true" runat="server"></asp:GridView> 
     <br /> 
     <asp:Label ID="lblErrorActivityGrid" runat="server" Text="Error Activity Grid"></asp:Label>   
     <br /> 
     <asp:Label ID="lblActivityGridCount" runat="server" Text="Activity Grid Count"></asp:Label> 
    </div> 
    </form> 
</body> 
</html> 

, 페이지로드에서 나는 DataSet에 DataTable을 추가하고 있는데 bindGridView 방법 호출

enter image description here

+0

시도했습니다. 작동하지 않습니다. –

+0

'grd.DataSource = dt;'에 중단 점을 설정하고'dt'에서 데이터를 봅니다. 비어 있으면'bindGridView (ds.Tables [0], g1, lblErrorActivityGrid, lblActivityGridCount);에 중단 점을 설정하고 데이터 세트 뷰어에서'ds '를 봅니다. gridview로 바인드 할 테이블인지 확인하십시오. – afzalulh

+0

내 데이터 테이블이 비어 있지 않습니다. 꽉 찼어. 그것은 많은 기록을 가지고 있습니다. 50 레코드 이상 –

관련 문제