您的位置:首页 > 编程语言 > ASP

asp.net每天积累一点点(6)

2010-05-05 16:08 176 查看
前面学了一些分页的简单知识

下面是建立一个自己定义的可以选择进入可用页的分页处理

-------------------------------------------------

下面是代码:

实现自定义分页跳转

<script runat="server">
Sub CheckPass(ByVal obj As Object, ByVal e As GridViewRowEventArgs)
If e.Row.RowIndex >= 0 Then
Dim index As Integer = 3
For index = 3 To e.Row.Cells.Count - 2
If CInt(e.Row.Cells(index).Text.ToString()) < 60 Then
e.Row.Cells(index).Text = "<font color='red'>" + e.Row.Cells(index).Text + "</font>"
End If
Next
End If
End Sub
Sub ChangePage(ByVal obj As Object, ByVal e As EventArgs)
Dim pagerow As GridViewRow = GridView4.BottomPagerRow
Dim pagelist As DropDownList = CType(pagerow.Cells(0).FindControl("dropdownlist"), DropDownList)
Dim lb As LinkButton = CType(obj, LinkButton)
Select Case lb.ID
Case "prebtn"
If pagelist.SelectedIndex > 0 Then pagelist.SelectedIndex -= 1
Case "nextbtn"
If pagelist.SelectedIndex < GridView4.PageCount - 1 Then pagelist.SelectedIndex += 1
End Select
GridView4.PageIndex = pagelist.SelectedIndex
End Sub
Sub NewPage(ByVal obj As Object, ByVal e As EventArgs)
Dim pagerow As GridViewRow = GridView4.BottomPagerRow
Dim pagelist As DropDownList = CType(pagerow.Cells(0).FindControl("dropdownlist"), DropDownList)
Dim pageinfo As Label = CType(pagerow.Cells(0).FindControl("pageinfo"), Label)
If Not pagelist Is Nothing Then
Dim i As Integer
For i = 0 To GridView4.PageCount - 1
Dim pageindex As Integer = i + 1
Dim item As ListItem = New ListItem(pageindex.ToString())
If i = GridView4.PageIndex Then item.Selected = True
pagelist.Items.Add(item)
Next
End If
If Not pageinfo Is Nothing Then
Dim currentpage As Integer = GridView4.PageIndex + 1
pageinfo.Text = "Page " + currentpage.ToString() + " Of " + GridView4.PageCount.ToString()
End If
End Sub
</script>
--------------------------------------------------------------
<asp:GridView ID="GridView4" runat="server" DataSourceID="source1" AlternatingRowStyle-BackColor="#c3c3c3"
AutoGenerateColumns="false" AllowPaging="true" PageSize="2" OnDataBound="NewPage" Visible="true">
<PagerStyle ForeColor="#cccccc" BackColor="#ffffff" />
<PagerTemplate>
<asp:Label ID="pageindex" runat="server" Text="请选择页码"></asp:Label>
<asp:DropDownList ID="dropdownlist" runat="server" AutoPostBack="true"></asp:DropDownList>
<asp:LinkButton ID="prebtn" runat="server" OnClick="ChangePage"><font face="webdings">3</font></asp:LinkButton>
<asp:LinkButton ID="nextbtn" runat="server" OnClick="ChangePage"><font face="webdings">4</font></asp:LinkButton>
<asp:Label ID="pageinfo" runat="server"></asp:Label>
</PagerTemplate>
<Columns>
<asp:BoundField HeaderText="姓名" DataField="name" DataFormatString="[{0}]" />
<asp:BoundField HeaderText="编号" DataField="studentno" ItemStyle-BackColor="#cccccc" SortExpression="studentno" />
<asp:BoundField HeaderText="地址" DataField="addrass" />
<asp:BoundField HeaderText="语文" DataField="chinese" SortExpression="chinese" />
<asp:BoundField HeaderText="英语" DataField="english" SortExpression="english"/>
<asp:BoundField HeaderText="数学" DataField="mathematics" SortExpression="mathematics"/>
<asp:BoundField HeaderText="班级" DataField="class" />
</Columns>

</asp:GridView>

代码是分为两个部分的

上面的代码

过程 NewPage 是在加载数据完成后 配置一下下列表内容和当前页信息的内容

过程 ChangePage 是在改变下拉列表选项后跳到指定页面的处理

重点在于不要设置AllowPagging为true

------------------------------

效果图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: