当前位置: 首页 > news >正文

C#学习笔记(三)---------Repeater的一些常规用法

Repeater和Gridview前台显示行号的方法
Repeater:<%# Container.ItemIndex %> <%# ((DataRowView)Container.DataItem)["XXXXXX"] %>
GridView:<%# Container.DateItemIndex%>


 

获取子控件进行编程处理
 
 获取子控件有两种方法可用:

1,将Container作为参数传到后台函数中。

  例如:<ItemTemplate><%#m_checkbox = (CheckBox)GetCheckBox(Container)%></ItemTemplate>
public CheckBox GetCheckBox(Control container)
  {
    return (CheckBox)container.FindControl("DontrolID");
  }
 
  2,利用postback事件---ItemCommand来实现
  protected void Repeater1_ItemCommand(object source,RepeaterCommandEventArgs e)
  {
    if(e.CommandName=="checkbox")//如果未指定CommandName属性则也可以用CommandSourc.Text属性。
    CheckBox a = (CheckBox)e.Item.FindControl("ControlID");
    //处理a控件。
  }
动态定制实现样式呈现
在生成HTML的函数中可以使用DataBinder.GetPropertyValue(Container.DataItem,"XXX");来得到指定数据对象(即该Container.DataItem)的指定属性的值。但前提是该属性需要申明为public并且至少有get访问器。否则将不起作用(例如该属性实现为一个字段)。举例:
<ItemTemplate><%# GetStyleForItem(Container)%></ItemTemplate>
public string GetStyleForItem(Control dataObj)//public 是必须的
{string value = DataBinder.GetPropertyValue(dataObj.DataItem,"XXX");
}

Repeater中时间显示格式的更改和变换
<%# DataBinder.Eval(Container.DataItem, "date").ToString().Substring (0,4) +"年"+DataBinder.Eval(Container.DataItem, "date").ToString().Substring (4,2) +"月"+DataBinder.Eval(Container.DataItem, "date").ToString().Substring (7,2) +"日"+DataBinder.Eval(Container.DataItem, "date").ToString().Substring (10,8)%>
Repeater中使用HtmlCode解码
<%# Server.HtmlDecode(DataBinder.Eval(Container.DataItem, "idea").ToString()) %>

Repeater中分页绑定时使用
//使用适配器
//startRecord起始位置
//maxRecord最大记录数,也就是每页条数
string cmdText = "SQL语句"
OracleConnection conn = new OracleConnection(connectionString);
conn.Open();
OracleCommand cmd = new OracleCommand();
cmd.Connection = conn;
cmd.CommandText = cmdText;
cmd.CommandType = CommandType.Text;
OracleDataAdapter dat = new OracleDataAdatper(cmd);
DataTable dt = new DataTable();
dat.Fill(startRecord, maxRecord, dt);
repeaterData.DataSource = dt;
repeaterData.DataBind();

 

Repeater中的CheckBox选取使用js技术

function CheckAll(obj){var id = obj.id;if(id == "allCheck"){if(obj.checked){SelectAllCheckBox(true);}else{SelectAllCheckBox(false);}}else{ if(obj.checked == false){document.all("allCheck").checked = false;}else{ var flag = IsAllChecked();if(flag){// 全选框被选中 document.all("allCheck").checked = true; }}}}
    function SelectAllCheckBox(checked){// 数据条数隐藏变量 var lenObj = document.all("DataCount");var len = parseInt(lenObj.value,10);for (var i = 0; i < len; i++){var tempId = i;// 小于10时,前面加"0"补齐 if(i < 10){tempId = "0" + i;}// 取得复选框 var checkBox = document.all("repeaterData_ctl" + tempId + "_checkBox");if (checkBox!=null && checkBox.type == "checkbox" ) {// 设定状态 checkBox.checked = checked;}}}function IsAllChecked(){var flag = true;// 数据条数隐藏变量 var lenObj = document.all("DataCount");var len = parseInt(lenObj.value,10);for (var i = 0; i < len; i++){var tempId = i;if(i < 10){tempId = "0" + i;}var checkBox = document.all("repeaterData_ctl" + tempId + "_checkBox");if (checkBox!=null && checkBox.type == "checkbox" ) {// 如果没被选中 if(checkBox.checked == false){flag = false;}}}return flag;}

在使用Repeater时,注意使用JS取repeater中控件时要使用repeater给控件生成的ID ,控件本身ID不可用,一般是查询不到的。而在使用GridView时,选择其中控件的方法可以直接使用查找控件ID,但是GridView在数据控件中属于最简单操作的一种,但是针对一它的可用性也是最差的,它在使用的时候使用较多的ViewState记录大量数据,如果想要效果和速度,那么关闭ViewState,但是这样就不能使用GridView中的分页、编辑、删除操作。


 

http://www.xdnf.cn/news/804817.html

相关文章:

  • 部署Windows Server Update Services(WSUS)服务器
  • 三星GT-P1000完美刷机教程,附ROM刷机包下载
  • Web前端:JavaScript最强总结 附详细代码 (带常用案例!)_javascript在前端的应用
  • 汇编语言定时器实验
  • 如何给移动硬盘分区?(移动硬盘分区详细指南)
  • WindowsXP 设置优化操作终极全攻略
  • Dos命令大全完整版
  • 前端网页设计必逛的六个宝藏网站(非常值得收藏)
  • 如何让爬虫一天抓取100万张网页
  • 商品软文怎么写?媒介盒子教你三步
  • 网络安全应急响应----5、勒索病毒应急响应
  • 猎豹浏览器发布2.0版,性能大幅提升
  • 金算盘高手论坛资料中心_3D002期 菜鸟论坛精英PK专栏 速来围观!!
  • 关于Mathtype5.0/5.2(推荐5.2)在word中的公式自动编号和引用编号的方法
  • 怎样给QQ好友播放假视频——————【Badboy】
  • Windows下 OracleXE_21 数据库的下载与安装
  • ARM Exploitation
  • DC的逻辑综合与优化
  • 云计算 Linux Rocky day03(which、快捷键、mount、家目录、ls、alias、mkdir、rm、mv、cp、grep)
  • 华为u9508荣耀2四核 Emotion UI B530精简ROOT刷机包【安全线刷模式,11月25日更新】
  • Exadata使用技巧 (-)
  • 【DGL学习1】GCN example
  • 优米网视频-在路上第四期:林正刚-外企职场心态
  • 《饭局也疯狂》范伟 黄渤 刘桦 最新喜剧大片下载,DVD 816MB 480P普清下载!
  • Ubuntu10.04版本下載地址
  • Web课程设计:旅游景点网站设计——北京故宫(9页) HTML+CSS+JavaScript 简单DIV布局个人介绍网页模板代码
  • 我的fedora9安装后配置
  • GetLastError返回代码含义
  • Ubuntu 9.04 全部官方衍生版本下载
  • 5个编写技巧,有效提高单元测试实践