2012-07-04 2 views
0

페이지에 GridView ASP 서버 컨트롤이 있고 그 AllowPaging을 true로 설정했습니다. 이제 전체 행을 반복하고 싶지만 정의한 PageSize의 수만큼만 반복합니다. 대답은 어떤 종류의 사전에AllowPaging 특성이 true로 설정된 GridView 전체를 루프하는 방법은 무엇입니까?

List<string> list = new List<String>(); 
    for(int x = 0; x <= 9; x++) 
    { 
     list.Add("Name " + (x + 1).ToString()); 
    } 

    gvName.DataSource = list; 
    gvName.DataBind(); 

foreach(GridViewRow row in gvName.Rows) 
{ 
    // gvName.Rows.Count only returns 5 instead of the total number of its record that is 10 
} 

감사 : 여기

<asp:GridView ID="gvName" runat="server" AllowPaging="True" PageSize="5" AutoGenerateColumns="True"></asp:GridView> 

뒤에 코드입니다 : 여기

은 ASP 코드입니다.

+0

가져올 항목이 무엇입니까? 해당 정보에 대한 목록을 반복 할 수 있습니다. –

답변

3

이것은 페이지가 어떻게 작동하는지 버그가 아닌 기능으로 페이지로드마다 x 행만로드합니다. 당신이 달성하기 위해 필요에 따라 수 중 하나 (? 당신은 단지 바로, 어쨌든 눈에 보이는 것들에 대해 관심을 가져야하기 때문에)

  • 주기를 실제 데이터 소스를 통해 모든 페이지로드에있는 행을 통해

    1. 주기 목록 개체 또는 GridView.DataSource (먼저 적절한 유형으로 캐스팅)을 사용하십시오.
  • +0

    안녕하세요 dbaseman, 또한 페이지에 표시되지 않는 행을 고려해야합니다. 어쨌든 코드에서 프로그래밍 방식으로 처리 할 수 ​​있습니까? 미리 감사드립니다. –

    +1

    @ Jemeel 페이지에없는 GridView 행이 아직 존재하지 않습니다. 무엇을하려고합니까? – McGarnagle

    +0

    존재하지 않는 페이지에있는 행으로 이동하려고하지만 가능하지 않은 것처럼 보입니다. 귀하의 지원에 감사 드리며 dbaseman에 대답합니다. –

    0

    하면 카운트 사용을 얻기 위해 행

    과 당신이 원하는 모든 작업을 수행 할 그리드 이벤트를 OnRowDataBound 이벤트를 사용 INT 수 = list.Count을;

    관련 문제