请问这样的分页怎么做??
首页 上一页 1 2 3 4 5 6 下一页 末页
请问上面这样的分页怎么做?绑定DataList的
[解决办法]
写个循环了...
[解决办法]
<%@ Import Namespace= "Wuqi.Webdiyer " %> 陕西吴旗
http://www.webdiyer.com/webdiyer/files.asp
先要去下载个Webdiyer.dll控件 然后添加控件 就ok了
[解决办法]
下一个 AspNetPager60 分页控件,很好用
[解决办法]
我想你可能主要是中间页码比较难实现吧,我以前做过个
主要通过循环给label控件加页码。
for(int i =1;i <=pageTotal;i++)
{
if(pageNumber != i)
{
this.lblPageNum.Text += " <a href=\ "javascript:ChangePage( "+i+ ")\ "> "+i+ " </a> ";
}
else
{
this.lblPageNum.Text +=i+ " ";
}
}
ChangePage()这个函数主要是将点击的页码数再次传给页面
[解决办法]
下一个 AspNetPager60 分页控件,很好用
[解决办法]
下一个 AspNetPager60 分页控件,很好用
[解决办法]
我刚自己写了一个,大致就是这样的,你看看:
//绑定数据到DataList
public void BindData()
{
int iPageNow = Convert.ToInt32(lPage.Text);
string strSQL = "select * from [note] order by ID desc ";
PagedDataSource pds = new PagedDataSource();
pds.DataSource = myData.OleDbCmdRtnTB(strSQL).DefaultView;
pds.AllowPaging = true; //允许分页
pds.PageSize = 3;
if (iPageNow+1 > pds.PageCount)
{
pds.CurrentPageIndex = pds.PageCount-1;
lPage.Text = Convert.ToString(pds.PageCount-1);
}
else
{
pds.CurrentPageIndex = iPageNow;
}
//输出页码
if (pds.PageCount > 1)
{
string strPages = " <img src= 'images/index/trans_10px.gif ' width= '10 ' height= '10 ' /> ";
for (int i = 1; i <= pds.PageCount; i++)
{
if (i == pds.CurrentPageIndex + 1)
{
strPages += " <a href= 'note_list.aspx?page= " + i + " ' class= 'red_big '> " + i + " </a> <img src= 'images/index/trans_10px.gif ' width= '10 ' height= '10 ' /> ";
}
else
{
strPages += " <a href= 'note_list.aspx?page= " + i + " ' class= 'FBlack '> " + i + " </a> <img src= 'images/index/trans_10px.gif ' width= '10 ' height= '10 ' /> ";
}
}
lPageNum.Text = strPages;
bPre.Visible = true;
bNext.Visible = true;
bDelAll.Visible = true;
lDel.Visible = true;
}
else
{
bPre.Visible = false;
bNext.Visible = false;
}
//下面主要是控制上下翻页按纽是否起用
bPre.Enabled = true;
bNext.Enabled = true;
if (pds.IsFirstPage)
{//如果是最前页,上页按纽不可用
bPre.Enabled = false;
//bPre.Visible = false;
bPre.ToolTip = "已到首页 ";
}
else
{
bPre.Enabled = true;
//bPre.Visible = true;
bPre.ToolTip = " ";
}
if (pds.IsLastPage)
{//如果是最后页,下页按纽不可用
bNext.Enabled = false;
//bNext.Visible = false;
bNext.ToolTip = "已到末页 ";
}
else
{
bNext.Enabled = true;
//bNext.Visible = true;
bNext.ToolTip = " ";
}
//绑定给DataList了
dataList.DataSource = pds;
dataList.DataKeyField = "ID ";
dataList.DataBind();
}
//上一页
protected void bPre_Click(object sender, ImageClickEventArgs e)
{
lPage.Text = Convert.ToString( Convert.ToInt32(lPage.Text)-1);
BindData();
}
//下一页
protected void bNext_Click(object sender, ImageClickEventArgs e)
{
lPage.Text = Convert.ToString(Convert.ToInt32(lPage.Text) + 1);
BindData();
}
[解决办法]
好。
[解决办法]
刚写了个,样式:第1页 共2页 38条记录 < < < 1 2 3 4 5 > > >
不过是gridview的,可以参考下
第 <asp:Label ID= "Label5 " runat= "server "> </asp:Label> 页
共 <asp:Label ID= "Label6 " runat= "server "> </asp:Label> 页
<asp:Label ID= "Label7 " runat= "server "> </asp:Label> 条记录
<asp:linkbutton ID= "Label8 " OnClick= "fn_page " CommandName= "first " Font-Underline= "false " ForeColor= "#666666 " runat= "server " Text= " <b> < < </b> " BorderColor= "#666666 " BackColor= "#FFCD4A " BorderWidth= "1 "> </asp:linkbutton>
<asp:linkbutton ID= "Label9 " OnClick= "fn_page " CommandName= "prev " Font-Underline= "false " ForeColor= "#666666 " runat= "server " Text= " <b> < </b> " BorderColor= "#666666 " BackColor= "#FFCD4A " BorderWidth= "1 "> </asp:linkbutton>
<asp:linkbutton ID= "Label10 " OnClick= "new_page " Font-Underline= "false " ForeColor= "#666666 " runat= "server " BorderColor= "#666666 " BackColor= "#FFCD4A " BorderWidth= "1 "> </asp:linkbutton>
<asp:linkbutton ID= "Label11 " OnClick= "new_page " Font-Underline= "false " ForeColor= "#666666 " runat= "server " BorderColor= "#666666 " BackColor= "#FFCD4A " BorderWidth= "1 "> </asp:linkbutton>
<asp:linkbutton ID= "Label12 " OnClick= "new_page " Font-Underline= "false " ForeColor= "#666666 " runat= "server " BorderColor= "#666666 " BackColor= "#FFCD4A " BorderWidth= "1 "> </asp:linkbutton>
<asp:linkbutton ID= "Label13 " OnClick= "new_page " Font-Underline= "false " ForeColor= "#666666 " runat= "server " BorderColor= "#666666 " BackColor= "#FFCD4A " BorderWidth= "1 "> </asp:linkbutton>
<asp:linkbutton ID= "Label14 " OnClick= "new_page " Font-Underline= "false " ForeColor= "#666666 " runat= "server " BorderColor= "#666666 " BackColor= "#FFCD4A " BorderWidth= "1 "> </asp:linkbutton>
<asp:linkbutton ID= "Label15 " OnClick= "fn_page " CommandName= "next " Font-Underline= "false " ForeColor= "#666666 " runat= "server " Text= " <b> > </b> " BorderColor= "#666666 " BackColor= "#FFCD4A " BorderWidth= "1 "> </asp:linkbutton>
<asp:linkbutton ID= "Label16 " OnClick= "fn_page " CommandName= "last " Font-Underline= "false " ForeColor= "#666666 " runat= "server " Text= " <b> > > </b> " BorderColor= "#666666 " BackColor= "#FFCD4A " BorderWidth= "1 "> </asp:linkbutton>
Sub new_page(ByVal s As System.Object, ByVal e As System.EventArgs)
Dim str As Int16 = Convert.ToInt16(CType(s, LinkButton).Text)
GridView1.PageIndex = str - 1
GridView1.EditIndex = -1
strsql = ViewState( "strsql ")
BindList()
End Sub
Sub fn_page(ByVal s As System.Object, ByVal e As System.EventArgs)
Dim str As String = CType(s, LinkButton).CommandName.ToString
Select Case str
Case "first "
GridView1.PageIndex = 0
GridView1.EditIndex = -1
strsql = ViewState( "strsql ")
BindList()
Case "prev "
If GridView1.PageIndex > 0 Then
GridView1.PageIndex = GridView1.PageIndex - 1
Else
GridView1.PageIndex = 0
End If
GridView1.EditIndex = -1
strsql = ViewState( "strsql ")
BindList()
Case "next "
GridView1.PageIndex = GridView1.PageIndex + 1
GridView1.EditIndex = -1
strsql = ViewState( "strsql ")
BindList()
Case "last "
GridView1.PageIndex = GridView1.PageCount - 1
GridView1.EditIndex = -1
strsql = ViewState( "strsql ")
BindList()
End Select
End Sub
Sub BindList()
Dim objcmd As New OleDbDataAdapter(strsql, StrCon)
Dim das As New DataSet
objcmd.Fill(das, "acount ")
das.Tables( "acount ").DefaultView.Sort = ViewState( "sort ") & " " & ViewState( "dire ")
GridView1.DataSource = das.Tables( "acount ").DefaultView
GridView1.DataBind()
Label5.Text = GridView1.PageIndex + 1
Label6.Text = GridView1.PageCount
Label7.Text = das.Tables(0).Rows.Count
Label10.Text = Int((GridView1.PageIndex) / 5) * 5 + 1
Label11.Text = Int((GridView1.PageIndex) / 5) * 5 + 2
Label12.Text = Int((GridView1.PageIndex) / 5) * 5 + 3
Label13.Text = Int((GridView1.PageIndex) / 5) * 5 + 4
Label14.Text = Int((GridView1.PageIndex) / 5) * 5 + 5
If Label10.Text = GridView1.PageIndex + 1 Then
Label10.BackColor = Drawing.Color.White
Else
Label10.BackColor = Drawing.ColorTranslator.FromHtml( "#FFCD4A ")
End If
If Label11.Text = GridView1.PageIndex + 1 Then
Label11.BackColor = Drawing.Color.White
Else
Label11.BackColor = Drawing.ColorTranslator.FromHtml( "#FFCD4A ")
End If
If Label12.Text = GridView1.PageIndex + 1 Then
Label12.BackColor = Drawing.Color.White
Else
Label12.BackColor = Drawing.ColorTranslator.FromHtml( "#FFCD4A ")
End If
If Label13.Text = GridView1.PageIndex + 1 Then
Label13.BackColor = Drawing.Color.White
Else
Label13.BackColor = Drawing.ColorTranslator.FromHtml( "#FFCD4A ")
End If
If Label14.Text = GridView1.PageIndex + 1 Then
Label14.BackColor = Drawing.Color.White
Else
Label14.BackColor = Drawing.ColorTranslator.FromHtml( "#FFCD4A ")
End If
End Sub
[解决办法]
WTS分页三剑侠
http://community.csdn.net/Expert/topic/5290/5290374.xml?temp=.5702173
不须要你写任何代码就可以实现你要的功能