Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
'不要使用代码编辑器修改它。
InitializeComponent()
BindList(1)
PageListItem()
ShowWhatButton()
End Sub
Sub BindList(ByVal PageNo As Integer)
myconn = New SqlClient.SqlConnection
myconn.ConnectionString = (xinxi.stringconnection)
Dim strSQL As String = "Select * From news Order By newsid Desc "
Dim objCmd As New SqlClient.SqlDataAdapter(strSQL, myconn.ConnectionString)
Dim DS As New DataSet
objCmd.Fill(DS, "news")
Dim myTable As DataTable = DS.Tables("news")
Dim TotalRecord As Integer = myTable.Rows.Count
ShowTotalRecord.Text = TotalRecord
Dim TotalPage As Integer
If TotalRecord < 20 Then ‘20:每页显示的数量
TotalPage = 1
Else
If TotalRecord Mod 20 <> 0 Then
TotalPage = TotalRecord / 20 + 1
Else
TotalPage = TotalRecord / 20
End If
End If
ShowTotalPage.Text = TotalPage
Dim tempTable As DataTable = myTable.Clone()
Dim I, J As Integer
For I = (PageNo - 1) * 20 To PageNo * 20 - 1
If I > myTable.Rows.Count - 1 Then Exit For
Dim newRow As DataRow = tempTable.NewRow()
For J = 0 To myTable.Columns.Count - 1
newRow(myTable.Columns(J).ColumnName) = myTable.Rows(I).Item(J)
Next
tempTable.Rows.Add(newRow)
Next
Label1.Text = PageNo
myGuestbook.DataSource = tempTable
myGuestbook.DataBind()
End Sub
Sub ShowWhatButton()
If PageList.SelectedIndex = 0 Then
firstButton.Enabled = False
preButton.Enabled = False
Else
firstButton.Enabled = True
preButton.Enabled = True
End If
If PageList.SelectedIndex = PageList.Items.Count - 1 Then
nextButton.Enabled = False
lastButton.Enabled = False
Else
nextButton.Enabled = True
lastButton.Enabled = True
End If
End Sub
Sub PageListItem()
Dim I As Integer
PageList.Items.Clear()
For I = 0 To ShowTotalPage.Text - 1
PageList.Items.Add("第" & I + 1 & "页")
Next
End Sub
Sub PageList_Change(ByVal sender As Object, ByVal e As EventArgs)
BindList(PageList.SelectedIndex + 1)
ShowWhatButton()
End Sub
Sub PageChange(ByVal sender As Object, ByVal e As CommandEventArgs)
Select Case e.CommandArgument
Case "firstPage"
PageList.SelectedIndex = 0
Case "prePage"
PageList.SelectedIndex -= 1
Case "nextPage"
PageList.SelectedIndex += 1
Case "lastPage"
PageList.SelectedIndex = ShowTotalPage.Text - 1
End Select
BindList(PageList.SelectedIndex + 1)
ShowWhatButton()
End Sub
<table height="450" cellSpacing="0" cellPadding="0" width="600" align="center" border="0">
<TBODY>
<tr>
<td vAlign="top"><ASP:DATALIST id="myGuestbook" Runat="Server">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr>
<td Width="10%"></td>
<td>
<table>
<tr>
<td><Img Src="images/jiantou.jpg"></td>
<td width="350"><A class=style5 Href='xinwen.aspx?newsid=<%# Container.DataItem("newsid")%>'><%# Container.DataItem("newsname") %></A>
</td>
<td width="100" align="right"><%# DataBinder.Eval(Container.DataItem,"adddate","{0:d}")%>
</td>
</tr>
</table>
</td>
</tr>
</table>
</ItemTemplate>
<FooterTemplate>
</FooterTemplate>
</ASP:DATAL>
<HR>
<CENTER><BR>
共<ASP:LABEL id="ShowTotalRecord" Runat="Server" ForeColor="Red"></ASP:LABEL>条新闻
<asp:LinkButton id="firstButton" Runat="Server" OnCommand="PageChange" CommandArgument="firstPage"
ForeColor="Black">首页</asp:LinkButton>
<asp:LinkButton id="preButton" ForeColor="Black" Runat="Server" OnCommand="PageChange" CommandArgument="prePage">上一页</asp:LinkButton>
<asp:LinkButton id="nextButton" ForeColor="Black" Runat="Server" OnCommand="PageChange" CommandArgument="nextPage">下一页</asp:LinkButton>
<asp:LinkButton id="lastButton" ForeColor="Black" Runat="Server" OnCommand="PageChange" CommandArgument="lastPage">尾页</asp:LinkButton>
页次:
<asp:label id="Label1" runat="server" ForeColor="Red"></asp:label>/<ASP:LABEL id="ShowTotalPage" Runat="Server"></ASP:LABEL>页
转到:<ASP:DROPDOWNLIST id="PageList" Runat="Server" OnSelectedIndexChanged="PageList_Change" AutoPostBack="True"></ASP:DROPDOWNLIST>
</CENTER>
</td>
</tr>
</TBODY>
</table>