【问题标题】:asp.net GridView Pager disappears!asp.net GridView Pager 消失了!
【发布时间】:2009-06-30 10:36:30
【问题描述】:

我有一个使用分页的 datagridview,它工作得非常好,我有一个下拉菜单允许用户更改“PageSize”属性 - 10、15、25、50、100、1000 等。

当我为 PageSize 选择的值大于网格的行数时,Pager 将从网格的顶部和底部消失。

有人知道为什么吗?

我在 aspx 页面中使用了一个自定义的 PageTemplate 元素。

干杯

奥利

【问题讨论】:

  • 奥利,考虑重新标记这个。它是 ASP.NET 端的 GridView 和 Windows 端的 DataGridView。
  • 这不是正常行为吗?当你不需要分页时为什么要分页?

标签: asp.net gridview paging


【解决方案1】:

行为是设计使然。您可以通过在网格的 OnDataBound 事件中设置寻呼机行的 Visible 属性(使用 TopPagerRow 或 BottomPagerRow 属性访问)来强制它保持可见。例如:

protected void grid_DataBound(object sender, EventArgs e)
{
    grid.TopPagerRow.Visible = true;
}

【讨论】:

    【解决方案2】:

    我发现如果您试图强制某个列不可见,就会发生这种情况。 例如,如果您使用:

    e.Row.Cells[0].Visible = false;

    您可以使寻呼机不可见。

    您应该改用此代码:

    如果(e.Row.RowType == DataControlRowType.DataRow || e.Row.RowType == DataControlRowType.Header) { e.Row.Cells[0].Visible = false; }

    【讨论】:

      【解决方案3】:

      当页数为1时,不需要显示Next/Previous或其他页面。对我来说听起来很正常。

      【讨论】:

      • 如果我想动态更改寻呼机中的下拉菜单显示的行数,那就不好了...但是我不应该真的允许用户更改显示的行数在寻呼机中这只是一个愚蠢的要求......
      【解决方案4】:

      问题与设计有关,因此请转到 Rad Grid View 的属性并更改属性:样式-->PagerStyle-->AlwaysVisible To (True)

      【讨论】:

      • 问题不是关于 RadGrid 而是关于 asp gridView!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多