DetailsView.AllowPaging 속성

정의

페이징 기능을 사용할지 여부를 나타내는 값을 가져오거나 설정합니다.

public:
 virtual property bool AllowPaging { bool get(); void set(bool value); };
public virtual bool AllowPaging { get; set; }
member this.AllowPaging : bool with get, set
Public Overridable Property AllowPaging As Boolean

속성 값

페이징 기능을 사용하는 경우 true이고, 그렇지 않으면 false입니다. 기본값은 false입니다.

예제

다음 코드 예제를 사용 AllowPaging 하는 방법에 설명 합니다 속성의 페이징 기능을 사용 하도록 설정 하는 DetailsView 컨트롤입니다.

<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsView AllowPaging Example</title>
</head>
<body>
    <form id="Form1" runat="server">
        
      <h3>DetailsView AllowPaging Example</h3>
                
        <asp:detailsview id="StoresDetailView"
          datasourceid="Customers"
          autogeneraterows="true" 
          allowpaging="true"
          runat="server">
               
          <headerstyle backcolor="Navy"
            forecolor="White"/>
            
          <pagersettings mode="NextPreviousFirstLast"
            firstpagetext="First"
            lastpagetext="Last"
            nextpagetext="Next"
            previouspagetext="Prev"/>
            
          <pagerstyle forecolor="White"
            backcolor="Blue"
            font-names="Arial"
            font-size="8" />   
        </asp:detailsview>
            
        <!-- This example uses Microsoft SQL Server and connects -->
        <!-- to the Northwind sample database. -->           
        <asp:SqlDataSource ID="Customers" runat="server" 
          ConnectionString=
            "<%$ ConnectionStrings:NorthwindConnectionString %>"
          SelectCommand="SELECT [CompanyName], [ContactName], 
             [CustomerID] FROM [Customers]">
        </asp:SqlDataSource>
            
      </form>
  </body>
</html>
<%@ Page language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsView AllowPaging Example</title>
</head>
<body>
    <form id="Form1" runat="server">
        
      <h3>DetailsView AllowPaging Example</h3>
                
        <asp:detailsview id="StoresDetailView"
          datasourceid="Customers"
          autogeneraterows="true" 
          allowpaging="true"
          runat="server">
               
          <headerstyle backcolor="Navy"
            forecolor="White"/>
            
          <pagersettings mode="NextPreviousFirstLast"
            firstpagetext="First"
            lastpagetext="Last"
            nextpagetext="Next"
            previouspagetext="Prev"/>
            
          <pagerstyle forecolor="White"
            backcolor="Blue"
            font-names="Arial"
            font-size="8" />   
        </asp:detailsview>
            
        <!-- This example uses Microsoft SQL Server and connects -->
        <!-- to the Northwind sample database. -->           
        <asp:SqlDataSource ID="Customers" runat="server" 
          ConnectionString=
            "<%$ ConnectionStrings:NorthwindConnectionString %>"
          SelectCommand="SELECT [CompanyName], [ContactName], 
             [CustomerID] FROM [Customers]">
        </asp:SqlDataSource>
            
      </form>
  </body>
</html>

설명

컨트롤에는 DetailsView 사용자가 데이터 원본의 다른 레코드로 이동할 수 있는 기본 제공 페이징 기능이 있습니다.

컨트롤은 DetailsView UI(사용자 인터페이스)와 데이터 원본 페이징을 모두 수행할 수 있습니다. UI 페이징 기능은 인터페이스를 지원하는 모든 데이터 원본 개체와 함께 사용할 수 있습니다 System.Collections.ICollection . 각 페이징 작업에 대해 컨트롤은 DetailsView 전체 데이터 컬렉션에 대한 데이터 원본을 쿼리하고 표시할 행을 선택하여 기본적으로 나머지 데이터를 삭제합니다.

데이터 원본이 를 구현 DataSourceView 하고 속성이 CanPage 를 반환 true하는 경우 컨트롤은 DetailsView UI 페이징 대신 데이터 원본 페이징을 사용합니다. 이 경우 컨트롤은 DetailsView 각 페이징 작업에 필요한 행만 쿼리합니다. 따라서 데이터 원본 페이징은 UI 페이징보다 더 효율적입니다. ObjectDataSourceView 개체만 수정 없이 데이터 원본 페이징을 지원합니다.

페이징 기능을 사용하려면 속성을 trueAllowPaging 설정합니다. 속성을 사용하여 PageCount 기본 데이터 원본의 총 항목 수를 확인할 수 있습니다. 현재 표시 된 항목의 인덱스 확인 하려면 사용 된 PageIndex 속성입니다.

페이징을 사용하도록 설정하면 호출기 행이라는 추가 행이 컨트롤에 DetailsView 자동으로 표시됩니다. 호출기 행에는 페이지 탐색 컨트롤이 포함되어 있으며 컨트롤의 위쪽, 아래쪽 또는 위쪽과 아래쪽 모두에 표시될 수 있습니다. 호출기 행에는 번호가 매겨진 페이지와 다음 및 이전 페이지 링크(기본값)의 두 가지 기본 제공 페이저 표시 모드가 있습니다. 번호가 매겨진 페이지 모드는 개별 페이지에 대한 링크를 표시하므로 사용자가 특정 페이지로 이동할 수 있습니다. 다음 및 이전 링크 모드는 사용자가 다음 페이지 또는 이전 페이지로 이동할 수 있도록 하는 컨트롤을 표시합니다.

참고

컨트롤은 DetailsView 데이터 원본에 두 개 미만의 레코드가 포함된 경우 호출기 행을 자동으로 숨깁니다.

속성을 사용하여 호출기 행의 설정(예: 호출기 표시 모드, 한 번에 표시할 페이지 링크 수 및 호출기 컨트롤의 텍스트 레이블)을 PagerSettings 제어할 수 있습니다. 호출기 행의 모양(배경색, 글꼴 색 및 위치 포함)을 PagerStyle 제어하려면 속성을 사용합니다. 컨트롤을 DetailsView 사용하면 호출기 행에 대한 사용자 지정 템플릿을 정의할 수도 있습니다. 사용자 지정 호출기 행 템플릿을 만드는 방법에 대한 자세한 내용은 를 참조하세요 PagerTemplate.

컨트롤은 DetailsView 페이징이 발생할 때 사용자 지정 작업을 수행하는 데 사용할 수 있는 여러 이벤트를 제공합니다. 다음 표에서는 사용 가능한 이벤트를 나열합니다.

이벤트 설명
PageIndexChanged 페이저 단추 중 하나를 클릭하면 DetailsView 컨트롤이 페이징 작업을 처리한 후에 이 이벤트가 발생합니다. 이 이벤트는 사용자가 컨트롤의 다른 레코드로 이동한 후 작업을 수행해야 하는 경우에 일반적으로 사용됩니다.
PageIndexChanging 페이저 단추 중 하나를 클릭하면 DetailsView 컨트롤이 페이징 작업을 처리하기 전에 이 이벤트가 발생합니다. 이 이벤트는 페이징 작업을 취소하는 데 자주 사용됩니다.

AllowPaging 은 뷰 상태에 저장됩니다.

적용 대상

추가 정보