WebGrid가있는 간단한 Webmatrix Razor 페이지가 있습니다. 페이징이 true로 설정되어 있고 페이지 당 100 개의 레코드를 표시하고 있습니다. 질문은 각 페이지에 표시되는 레코드 범위를 어떻게 표시합니까? 예를 들어, 그리드의 1 페이지 하단에 'Displaying records 1-100'이라고 말하고 싶습니다. 그런 다음 누군가 그리드의 2 페이지를 클릭하면 'Displaying records 101-200'이라고 말하고 싶습니다.
검색했지만 방법을 찾을 수 없습니다. 사용하여 결합 된 모든 페이지의 총 행을 얻는 방법을 알고 있습니다.
grid.TotalRowCount
또한 다음을 사용하여 페이지 당 행 (내 경우에는 각각 100 개)을 가져올 수 있습니다.
grid.RowsPerPage
페이지 당 표시되는 행의 범위를 가져 오는 방법을 잘 모르겠습니다. 나는 현재 표시된 그리드 페이지의 페이지 번호를 가져오고 다음과 같은 작업을 수행하는 것에 대해 생각했습니다 .'Displaying Records : ((grid.RowsPerPage * current page number)-99) to (grid.RowsPerPage * current page number)
위의 방법이 작동한다고 생각하지만 현재 페이지 번호를 얻는 방법을 모르겠습니다. 총 페이지 수를 알려주는 옵션 만 찾을 수있었습니다.
어떤 도움이라도 대단히 감사하겠습니다.
페이지에 100 개만 표시되고 웹 페이지에 표시 될 데이터의 수를 알고 있기 때문입니다. 그리드의 바닥 글을 편집하고 Mike가 주석에서 언급 한대로 URL에서 찾을 수있는 세부 정보를 작성할 수 있습니다.
var currentIndex = UrlData[0];
// or, use Request.QueryString["page"];
// if, URL is like /search?page=1
var endIndex = currentIndex * 100; // results 100, 200, 300...
var startIndex = endIndex - 99; // results 1, 101, 201...
.. URL은 http://www.example.com/page/1 형식이어야합니다 .
그러면 다음과 같이 표시 할 수 있습니다.
<div>
Showing pages from @startIndex to @endIndex.
</div>
이로 인해 달성하려는 기능이 생성됩니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다