내 사용자 컨트롤을 페이지해야합니다. 8 개 또는 10 개의 그룹이 잘 보입니다.사용자 정의 컨트롤에 페이징을 어떻게 추가합니까?
<asp:PlaceHolder ID="ProfileContainer" runat="server"></asp:PlaceHolder>
을 그리고 그 자리는 다음과 같이 채워집니다 : 현재, 그들은 자리에있어
var model = //LINQ to Entities query
foreach(var profile in model) {
Controls_Profile profile = (Controls_Profile)Page.LoadControl("~/Controls/Profile.ascx");
profile.Name = model.Name;
//more properties
ProfileContainer.Controls.Add(profile);
}
내가 어떻게 페이지 나 프로파일의 수백 경우의 결과? 내가 찾은 대부분의 게시물은 테이블을 페이지하는 맞춤형 페이징 컨트롤을 만드는 것과 관련이 있습니다.
<div id="Group1">
과 함께 첫 번째 컨트롤 앞에 카운터를 만드는 것에 대해 생각했습니다. 8 또는 10 개의 컨트롤 뒤에 </div>
을 추가하십시오. jQuery를 사용하여 이전/다음 링크를 삽입하고 그룹 번호를 기반으로 흐름을 제어 할 수있었습니다. 그러나 컨트롤을 추가 할 때 루프 중간에 Response.Write("<div id="groupx">");
을 어떻게 처리합니까? 어떻게 작동합니까?
public DataTable getControls()
{
DataTable dt = new DataTable();
//Code to populate table
return dt;
}
: 그리고 내가 페이징 그래도 작업을 위해 데이터 소스를 위해 어떤 종류의 열거 인터페이스를하는 것을 두려워
<asp:GridView ID="YourGridView" AllowPaging="true" DataSource='<%# getControls() %>'></asp:GridView>
내 댓글에 대해서는
사용자 지정 컨트롤로 채워진 DataTable을 반환하는 함수를 만들어 GridView의 데이터 소스로 설정할 수 있습니다. 이렇게하면 GridView의 페이징 기능을 사용할 수 있습니다. – clifgriffin