C # MVC: универсальный / многоразовый пейджер (для разных гридов на разных страницах) - PullRequest
2 голосов
/ 09 июня 2009

Можно ли создать «общий» пейджер (ASCX UserControl), который можно использовать с различными сетками на разных страницах для управления подкачкой? Так что мне нужно только отрендерить его с помощью RenderPartial.

В настоящее время я работаю над сеткой «Контакты», для которой требуется функциональность подкачки, но позже мне придется повторно использовать подкачку, поэтому я подумал, смогу ли я сделать это общим частичным контролем.

Одна проблема, о которой я могу подумать прямо сейчас: как мне управлять ссылкой AJAX при щелчке по любому из номеров пейджеров, поскольку это должно быть иначе, если это другая сетка?

Ответы [ 2 ]

1 голос
/ 09 июня 2009

Вы можете создать объект PagerViewModel со следующими свойствами:

public PagerViewModel
{
    public string Controller { get; set; }
    public int StartPage { get; set; }
    public int EndPage { get; set; }
}

И создайте Pager.ascx частичное представление следующим образом:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<PagerViewModel>" %>
<% for(int i = Model.StartPage; i <= Model.EndPage; i++) { %>
<a href="<%= ViewData.Model.Controller %>/Page/<%= i %>"><%= i %></a>
<% } %>

Я думаю, вы можете понять, как его использовать; -)

1 голос
/ 09 июня 2009

Посмотрите на MVCContrib: http://mvccontrib.codeplex.com/Wiki/View.aspx?title=Documentation Вот пример: http://www.c -sharpcorner.com / Blogs / BlogDetail.aspx? BlogId = 875 использования общего пейджера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...