转载http://www.cnblogs.com/zjwei55/archive/2011/08/31/2161415.html

灵活的运用数据绑定操作
        绑定到简单属性:<%#UserName%>
        绑定到集合:<asp:ListBox id="ListBox1" datasource='<%# myArray%>' runat="server">
        绑定到表达式:<%#(class1.property1.ToString() + "," + class1.property2.ToString())%>
        绑定到方法返回值:<%# GetSafestring(str) %>
        绑定到Hashtable:<%# ((DictionaryEntry)Container.DataItem).Key%>
        绑定到ArrayList:<%#Container.DataItem %>

若数组里里放的是对象则可能要进行必要的转换后再绑定如:
        <%#((对象类型)Container.DataItem).属性%>

绑定到DataView,DataTable,DataSet:
        <%#((DataRowView)Container.DataItem)["字段名"]%>或
        <%#((DataRowView)Container.DataItem).Rows[0]["字段名"]%>
        要格式化则:
        <%#string.Format("格式",((DataRowView)Container.DataItem)["字段名"])%>
        <%#DataBinder.Eval(Container.DataItem,"字段名","格式")%>

绑定到DataReader:
        <%#((IDataReader)Container.DataItem).字段名%>

当然为了方便一般使用最多的就是DataBinder类的Eval方法了.不过这样对于同时要绑定大量的数据效率要低一些

在绑定数据时经常会用到这个句程序:<%# DataBinder.Eval(Container.DataItem,"xxxx")%>或者<%# DataBinder.Eval(Container,"DataItem.xxxx")%>

今天又学到一种,而且微软也说这种方法的效率要比以上两种高。

<%# ((DataRowView)Container.DataItem)["xxxx"]%>

很有用的,这样可以在前台页面做好多事情了。

还要记住要这样用必须要在前台页面导入名称空间System.Data,否则会生成错误信息。

<%@ Import namespace="System.Data" %>

这种用法其实和<%# ((DictionaryEntry)Container.DataItem).Key%>是一个道理。

Text='<%# DataBinder.Eval(Container.DataItem, "字段") %>'   这样的方法是最快的

Text='<%# GetPrice() %>'   也可以绑定方法,但方法要是public的

Text='<%# "CarDetails.aspx?CarID=" + DataBinder.Eval(Container.DataItem, "CarID") %>'   还可以连接多个字段

关键是Container这个东西,它比较神秘。它的名称空间是System.ComponentModel。

初学.NET,现在在看DataGrid控件,在ItemTemplate显示数据时,

DataBinder.Eval(Container.DataItem,"Name")和Container.DataItem("Name")有什么区别?DataBinder是

System.Web里面的一个静态类,它提供了Eval方法用于简化数据绑定表达式的编写,但是它使用的方式是通过Reflection等开销比

较大的方法来达到易用性,因此其性能并不是最好的。而Container则根本不是任何一个静态的对象或方法,它是ASP.NET页面编译

器在数据绑定事件处理程序内部声明的局部变量,其类型是可以进行数据绑定的控件的数据容器类型(如在Repeater内部的数据绑定

容器叫RepeaterItem),在这些容器类中基本都有DataItem属性,因此你可以写Container.DataItem,这个属性返回的是你正在

被绑定的数据源中的那个数据项。如果你的数据源是DataTable,则这个数据项的类型实际是DataRowView。

转载于:https://www.cnblogs.com/bfy-19/archive/2012/07/04/2576385.html

ASP.NET 数据绑定操作相关推荐

  1. 深入ASP.NET数据绑定(上)

    转载自阿不 http://hjf1223.cnblogs.com/ 在ASP.NET我们在使用Repeater,DetailsView,FormView,GridView等数据绑定模板时,都会使用&l ...

  2. 【译】在Asp.Net中操作PDF – iTextSharp -利用块,短语,段落添加文本

    本篇文章是讲述使用iTextSharp这个开源组件的系列文章的第三篇,iTextSharp可以通过Asp.Net创建PDFs,就像HTML和ASP.Net为文本提供了多种容器一样,iTextSharp ...

  3. 深入ASP.NET数据绑定(中)——数据双向绑定机理

    转载自 阿不 http://hjf1223.cnblogs.com/ 在上一篇<深入ASP.NET数据绑定(上)>中,我们分析了在.NET中的数据绑定语法的一些内部机理.简单说来就是ASP ...

  4. ASP.NET数据绑定的记忆碎片

    ASP.NET数据绑定的一般情况 1.<%=  C#代码  %>  //调用代码隐藏页面的方法.属性.或者字段 这里一般是调用属性和方法比较多,要注意调用的属性.方法或者字段的作用域,必须 ...

  5. asp.net word操作

    在ASP.NET里操作Word的第一步就是添加COM引用到你的工程里,通过右键点击"解决方案资源管理器"的"引用",添加引用.选择COM选项卡,添加Micros ...

  6. 【阿不】深入ASP.NET数据绑定(下)—多样的绑定方式

    在这个系列的上篇中介绍了数据绑定语法的原理以及.NET中如何实现单向绑定,中篇我们简单的介绍了ASP.NET 2.0 中新增的Bind语法配合DataSourceControl来实现数据的自动双向绑定 ...

  7. 【阿不】深入ASP.NET数据绑定(中)—数据双向绑定机理

    在上一篇<深入ASP.NET数据绑定(上)>中,我们分析了在.NET中的数据绑定语法的一些内部机理.简单说来就是ASP.NET在运行时为我们完成了页面的动态编译,并解析页面的各种服务器端代 ...

  8. ASP.NET 数据绑定控件(转)

    ListBox.GridView.Repeater这三个数据绑定控件的"高效分页",ListBox和GridView内置的有分页,但是其效率太低了,少量的数据还可以,大量的数据根本 ...

  9. ASP.NET 数据绑定详解 代码+步骤

    文章目录 1. 数据绑定概述 2. 简单数据绑定 2.1. 属性绑定 2.2. 表达式绑定 2.3. 集合绑定 2.4. 方法绑定 3. 数据控件绑定 3.1. ListControl 控件 3.2. ...

  10. aspx repeater 用法_详解ASP.NET数据绑定操作中Repeater控件的用法

    一.绑定控件之Repeater.NET封装了多种数据绑定控件,诸如GridView.DataList等但该篇文章将会从Repeater入手,因为Repeater只提供了基本的数据绑定模板,没有内置其它 ...

最新文章

  1. Linux内存管理原理
  2. DevExpress.XtraBars.Ribbon控件使用系列 (1)创建Ribbon窗体
  3. ASM上的备份集如何转移到文件系统中
  4. Flume实战监听网络端口
  5. C++由(int)a引发的思考及浮点数在内存中的表示
  6. 前端知识天天学(2)
  7. 2021-06-22文本样式
  8. 通用办公报表打印软件
  9. web网页保存为PDF文件
  10. 姿态估计4-06:voxelpose(多视角3D人体姿态估算)-源码无死角解析(1)-训练代码总览
  11. Win10怎么搜索文件内容?Win10通过文件内容查找文件的方法
  12. 【Vmware的vmdk文件转img文件】
  13. TC358774XBG/TC358775XBG替代方案|CS5518替代TC358774XBG/TC358775XBG设计DSI转LVSD设计资料
  14. python中numpy函数ftt_语音MFCC提取:librosa python_speech_feature(2019.12)
  15. 用AI从零开始创建一个宫崎骏的世界
  16. ROS kinetic 运行s_msckf和 vins_fusion
  17. 【华人学者风采】毛景文 中国地质科学院
  18. 苹果电脑怎么无痕浏览网页
  19. 1 数据分析业务指标
  20. R语言爬虫慕课网课程信息(超级详细!)

热门文章

  1. “新闻”频道“最新更新”有问题吗?
  2. Qt5学习笔记之串口助手四:增加16进制/ASCII切换、周期发送
  3. 【tf.keras】tf.keras模型复现
  4. (转)限制字符长度及特殊符号不能输入
  5. 第一章 硬件介绍和环境配置
  6. Python自动发送邮件提示:smtplib.SMTPServerDisconnected: please run connect() first
  7. Jsoncpp 使用方法大全
  8. BZOJ3172 TJOI2013 单词 AC自动机
  9. android 异步加载图片缩略图
  10. 修改注册表设置桌面和收藏夹路径