资讯 手机客户端 00 : 00 : 00
圈子家园文章新帖公交查询实验室网盘教案管理上网客户端课表查询切换到宽版

127社区

 找回密码
 立即注册

只需一步,快速开始

用新浪微博连接

一步搞定

搜索
热搜: 思源楼 3+1课表 无线共享 招聘 学生会
关闭

站长推荐

亲,还没下载论坛手机客户端?跟上潮流做时尚达人。掌中乐趣无处不在,快点下载吧。

查看 »

返回列表

166

主题

15

听众

1748

积分

管理员

  • 收听TA
  • 发消息
发表于 2011-12-29 11:30:25 |显示全部楼层
  要获取当前行的某个数据列,在实践中总结有如下几种方法:
  1. e.Row.Cells[x].Text。
  从列单元格的文本值获取。这种方法简单高率,最为常用,但是功能单纯。此法存在几个缺点:
  (1) 无法获取到设置了隐藏属性的数据列的值,所取到的值为“”(空)。
  (2) 只能获取在HTML中定义过的数据列,无法查询数据源中的当前数据行的所有字段列。一般情况下,通过HTML设置GridView的字段列的数量往往小于数据源的实际字段数量,这是因为从业务逻辑的角度看,并不是所有的字段都是要显示在页面上的。当需要使用没有被显示的字段时,此法就不能直接满足需求了。
  2. e.Row.Cells[x].findControl(“xxx”) as …
      e.Row.findControl(“xxx”) as ..
  3. ((DataRowView)e.Row.DataItem).Row.ItemArray[x].ToString()或((DataRowView)e.Row.DataItem)[x].ToString()。
  此法的核心是e.Row.DataItem,它是GridView的行数据集,为Object类型,将其转化为DataRowView类型后,可以获得更多的操作方法。此数据集表示数据源当前行的全部字段列,ItemArray[x]是当前行全部字段列的数组对象,可以通过索引x获得任意字段值。此法的强悍之处是可以对数据源的全部字段查询。
  4. DataBinder.Eval(e.Row.DataItem, "YourDataFieldName").ToString()。
此法仍然基于e.Row.DataItem,其特点是更快捷的获得数据源的任意字段值,因为使用了DataBinder.Eval(),需要注意的是不要写错字段名称。
false, 客户端
回复

使用道具 举报

返回列表
高级模式
您需要登录后才可以回帖 登录 | 立即注册

插件友情推广计划插件友情推广计划插件友情推广计划

手机客户端|Archiver| 127社区-重庆科创职业学院论坛 ( 渝ICP备10016736号 )   |   

GMT+8, 2014-2-23 18:07

回顶部