GridView Custom PagerTemplate, Показать Скрыть Предыдущие и Следующие Ссылки - PullRequest
0 голосов
/ 12 января 2012

У меня есть следующий шаблон PagerTemplate.Мне нужно скрыть предыдущую ссылку, когда пользователь просматривает первую страницу, и скрыть следующую ссылку, если пользователь просматривает последнюю страницу.

                <PagerTemplate>
                    <table border="0" style="width: 100%;">
                        <tbody>
                            <tr>
                                <td style="float: right;">
                                    <asp:LinkButton CommandName="Page" CommandArgument="Prev" ID="LinkButton2" runat="server"><< Previous</asp:LinkButton>
                                    &nbsp;<asp:LinkButton CommandName="Page" CommandArgument="Next" ID="LinkButton3" runat="server" >Next >></asp:LinkButton>
                                </td>
                                <td style="clear: both"></td>
                            </tr>
                        </tbody>
                    </table>
                </PagerTemplate>

1 Ответ

3 голосов
/ 12 января 2012
Здесь вам помогут свойства

Grid PageIndex и PageCount - Предыдущая ссылка должна отображаться / включаться только тогда, когда PageIndex > 0, а Следующая ссылка должна отображаться / включаться только когда PageIndex < PageCount - 1.

ИспользованиеСтрока создает событие, чтобы найти элементы управления и изменить видимость.Например,

protected void GridView_RowCreated(Object sender, GridViewRowEventArgs e)
{
    if(e.Row.RowType == DataControlRowType.Pager)
    {
       var prev = (LinkButton)e.Row.FindControl("LinkButton2");
       prev.Visible = Grid.PageIndex > 0;

       var next = (LinkButton)e.Row.FindControl("LinkButton3");
       next.Visible = Grid.PageIndex < grid.PageCount -  1;
    }
}

Я не уверен, что вам нужен собственный шаблон для текущего пользовательского интерфейса.Вы можете использовать настройки пейджера - например,

<pagersettings mode="NextPrevious"
            nextpagetext="Next >>"
            previouspagetext="<< Previos"   
            position="Bottom"/> 

И использовать PagerStyle для стилизации пользовательского интерфейса.

<PagerStyle CssClass="myPager" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...