DataList分页访问FooterTemplate模板里的控件
今天做DataList分页的时候,突然想把分页控件写在FooterTemplate模板里面,弄了很久都访问不到控件,终于发现问题所在,以下是访问FooterTemplate里控件的方法:
<FooterTemplate>
<div style="width:100%; text-align:right; margin-top:15px;">
第<asp:Label ID="lblPageIndex" runat="server"></asp:Label>/
<asp:Label ID="lblPageCount" runat="server"></asp:Label>页
<asp:LinkButton ID="linkFirst" CommandName="First" runat="server">首页</asp:LinkButton>
<asp:LinkButton ID="linkPrev" CommandName="Prev" runat="server">上一页</asp:LinkButton>
<asp:LinkButton ID="linkNext" CommandName="Next" runat="server">下一页</asp:LinkButton>
<asp:LinkButton ID="linkLast" CommandName="Last" runat="server">尾页</asp:LinkButton>
</div>
</FooterTemplate>
后台代码:====================================================================
private int pageCount = 0;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ViewState["PageIndex"] = 0;
DataListBind();
}
}
public int Pager
{
get { return (int)ViewState["PageIndex"]; }
set { ViewState["PageIndex"] = value; }
}
private void DataListBind()
{
SqlConnection conn = new SqlConnection("data source=.;initial catalog=study;uid=sa;pwd=123456;");
SqlCommand cmd = new SqlCommand("select * from productinfo", conn);
SqlDataAdapter sda = new SqlDataAdapter(cmd);
conn.Close();
DataSet ds = new DataSet();
sda.Fill(ds);
DataList1.DataSource = ds;
DataList1.DataKeyField = "pid";
PagedDataSource pds = new PagedDataSource();
DataView dv = new DataView(ds.Tables[0]);
pds.DataSource = dv;
pds.AllowPaging = true;
pds.PageSize = 8;
pageCount = pds.PageCount;
pds.CurrentPageIndex = Pager;
DataList1.DataSource = pds;
DataList1.RepeatColumns = 4;
DataList1.DataBind();
// 下面的的代码一定要写在DataList1.DataBind();后面,不然会提示:索引超出界限
Label lblIndex = DataList1.Controls[DataList1.Controls.Count - 1].FindControl("lblPageIndex") as Label;
Label lblCount = DataList1.Controls[DataList1.Controls.Count - 1].FindControl("lblPageCount") as Label;
lblIndex.Text = (Pager + 1).ToString();
lblCount.Text = pds.PageCount.ToString();
}
protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
Label lblCount = DataList1.Controls[DataList1.Controls.Count - 1].FindControl("lblPageCount") as Label;
switch (e.CommandName)
{
case "First" :
Pager = 0;
break;
case "Prev":
if (Pager>=1)
{
Pager--;
}
break;
case "Next":
if (Pager < Convert.ToInt32(lblCount.Text)-1)
{
Pager++;
}
break;
case "Last":
Pager = Convert.ToInt32(lblCount.Text)-1;
break;
}
DataListBind();
}
转载于:https://www.cnblogs.com/ianunspace/p/3439380.html
DataList分页访问FooterTemplate模板里的控件相关推荐
- ASP.NET Repeater 头模板(HeaderTemplate)和FooterTemplate模板中查找控件
//在HeaderTemplate中寻找Label1,默认为第0个 string s=((Label)Repeater1.Controls[0].FindControl("Label1&qu ...
- 给DataList分页有两个办法:1、自定义实现分页方法 2、用第三方控件(例如AspNetPager)
给DataList分页有两个办法:1.自定义实现分页方法 2.用第三方控件(例如AspNetPager) 先介绍下如何自定义实现分页方法. 我的DataList分页方法的核心原理是利用PagedDat ...
- UWP 查找模板中的控件
UWP 查找模板中的控件 原文:UWP 查找模板中的控件 这个标题我也不知道咋起,意思说一下你就明白. 1. 对官方控件的模板进行定制修改,以满足多样化需求,还有漂亮的UI 比如ListView,Gr ...
- [转] 使用模板自定义 WPF 控件
[转] 使用模板自定义 WPF 控件 ...
- mfc中在vector里添加控件类型的数据时出现C2248错误
@mfc中在vector里添加控件类型的数据时出现C2248错误 这是我在.h文件中定义的2个容器 public:vector<CComboBox*> cbx;vector <CSt ...
- c#里什么控件可以播放视频(avi)?怎么实现
Q: c#里什么控件可以播放视频(avi)?怎么实现 A: DirectShow MediaPlayer in C# 参考http://www.codeproject.com/cs/media/dir ...
- (转)一个带自定义分页,排序功能的DATAGRID控件(公开源码)
因为项目需要,要弄个有这样功能的控件.要有自定意分页和排序的功能.在这个控件里面数据的绑定都是用DataView来实现,DataView放在Session里,如果大家有更灵活的方法可以留言给我.S ...
- html 素材表(模板、日期控件、对话框样式、 翻页 、框架)
模板素材: 素材火:http://www.sucaihuo.com/ HTML 5 Tricks :http://www.html5tricks.com/ 日期控件: my97 DatePicker: ...
- dev里timeedit控件如何赋值_抽奖程序里的字节跳动模式和时长控制,让抽奖更有仪式感!...
用excel的随机函数配合index函数可以很方便的实现从一组数据中随机抽取单个数据,常用于抽奖小程序.但若想让抽奖时数据跳动一段时间再出现最终的结果,就好像真正的抽奖一样,只用函数就不好实现了.今天 ...
最新文章
- 2018 区块链技术及应用峰会(BTA)·中国全日程新鲜出炉,更多精彩议题看不停
- python requests返回值为200 但是text无内容_爬取高清无版权美图
- html5和前端精要(5)-基于python脚本(2)
- 复旦大学计算机保研经历,#易保研#经验分享 | 个人经历分享,圆梦复旦大学!...
- linux mysql 实战_Linux平台MySQL多实例项目实施_MySQL数据库基础与项目实战06
- 生活中的数学 —— 几何
- 从前端开发者看待用友建筑云移动端单点登录与报错原因
- 移动开发 Jetpack Compose 组件布局
- QQ空间那年今日 人人过往的今天
- vue基础之v-for,key
- C#飞机大战程序设计
- Mac下的Homebrew安装与使用
- python读取xlsm文件_在保留VBA宏的同时使用熊猫读取和更新XLSM文件中的图纸 - python...
- html table td 居中显示,table td怎么垂直居中显示 详解table中如何隐藏td?
- mcldownload文件夹_—MCLDownload—文件夹
- 红与蓝:现代Webshell检测引擎免杀对抗与实践
- ajax java首字母检索_AJAX的拼音首字母查找对应中文的portlet
- 苹果x漫画脸_苹果最新iPhone SE:秒杀安卓的小屏旗舰
- GIS基础(1)空间参考
- Informix数据库优化
热门文章
- ie和谷歌在java中空格兼容,谷歌和IE浏览器的兼容性问题,相同的html结构竟然在两个浏览器不一样...
- 【ElasticSearch】Es 源码之 快照 RepositoriesModule RepositoriesService 源码解读
- Spring : @Qualifier 注解
- 网络:Server returned HTTP response code: 400(url中文)
- 【linux系统编程】剖析shell运行原理
- Java关键字:final,static,this,super
- 一文搞懂 ElasticSearch 集群,就它了!
- Spring 声明式事务应该怎么学?
- IntelliJ IDEA这样配置,代码效率嗖嗖的
- SpringBoot 操作 Redis的各种实现(以及Jedis、Redisson、Lettuce的区别比较)