又要麻烦大家看看了!

s3508 2003-04-05 09:37:50
<%@ import namespace = "System.Data" %>
<%@ import namespace = "System.Data.SqlClient" %>

<script language="C#" runat="server">

private void Page_Load(object sender, EventArgs e)
{
string strConn = "user id = sa; password = sa; server = lzh; database = project1;";
SqlConnection myConn = new SqlConnection(strConn);
string strSQL = "select pub.pub01 as A1, dep.dep02 as A2, pub.pub03 as A3, pub.pub06 as A4, emp.emp03 as A5 from emp, pub, dep where pub.pub05 = emp.emp01 and pub.pub02 = dep.dep01 order by pub.pub06 DESC";

myConn.Open();
SqlCommand myCommand = new SqlCommand(strSQL, myConn);
mainboard.DataSource = myCommand.ExecuteReader();
mainboard.DataBind();
myConn.Close();
}

private void ChangePage(object sender, DataGridPageChangedEventArgs e)
{
mainboard.CurrentPageIndex = e.NewPageIndex;

string strConn = "user id = sa; password = sa; server = lzh; database = project1;";
SqlConnection myConn = new SqlConnection(strConn);
string strSQL = "select pub.pub01 as A1, dep.dep02 as A2, pub.pub03 as A3, pub.pub06 as A4, emp.emp03 as A5 from emp, pub, dep where pub.pub05 = emp.emp01 and pub.pub02 = dep.dep01 order by pub.pub06 DESC";

myConn.Open();
SqlCommand myCommand = new SqlCommand(strSQL, myConn);
mainboard.DataSource = myCommand.ExecuteReader();
mainboard.DataBind();
myConn.Close();
}

</script>

<html>
<head>
<title>公告栏</title>
</head>
<body>
<form runat = "server">
<table width="650" border="1" align="center">
<tr>
<td><a href="announce.aspx">发布公告</a></td>
</tr>
<tr>
<td>
<asp:datagrid Id = "mainboard" AllowPaging = "True" PageSize = "3" OnPageIndexChange = "ChagePage" CellPadding = "2" CellSpacing = "0" DataKeyField = "A1" AutoGenerateColumns = "false" width = "650"
runat = "server" AllowCustomPaging = "true">
<PagerStyle Mode = "NextPrev" NextPageText = "下一页" PrevPageText = "上一页" HorizontalAlign="Right" ></PagerStyle>
<columns>
<asp:hyperlinkcolumn HeaderText = "公告内容" Text = "点击查看" DataNavigateUrlField = "A1" DataNavigateUrlFormatString = "thread.aspx?id={0}" />
<asp:boundcolumn HeaderText = "公告部门" DataField = "A2" />
<asp:boundcolumn HeaderText = "公告主题" DataField = "A3" />
<asp:boundcolumn HeaderText = "公告日期" DataField = "A4" DataFormatString = "{0:d}" />
<asp:boundcolumn HeaderText = "公告人员" DataField = "A5" />
<asp:hyperlinkcolumn HeaderText = "修改" Text = "编辑/删除" DataNavigateUrlField = "A1" DataNavigateUrlFormatString = "manage.aspx?id={0}" />
</columns>
</asp:datagrid>
</td>
</tr>
</table>
</form>
</body>
</html>

现在我pub表里面有10项内容,但我要求每页只显示3项,但我运行本程序后发现“下一页”没有连接,即不能查看下一个3项,请问这个问题如何解决?先谢了。
...全文
43 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
truesight 2003-04-06
  • 打赏
  • 举报
回复
由于你加了AllowCustomPaging=“true”,也就是允许自定义分页,所以只显示3条,而且没有下一页链接,解决办法有两个
1。你的数据不多,只有10条,完全可以把这一属性去掉,就ok了
2。如果你的数据很多,不希望每次databind的时候都重新读取数据并填充dataset,可以设置AllowCustomPaging="true"
然后在page_load事件或是绑定事件前加上这样一句
DataView dv=ds.Tables["YourTable"].Defaultview;
DataGrid.VirtualItemCount=dv.Count;//主要就是这一句,设置数据的数目
DataGrid.DataSource=dv;
DataGrid.DataBind();
就可以解决了

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧