zoukankan      html  css  js  c++  java
  • asp.net中DataBinder.Eval的用法总结

      很久没用vs2003了,晕用惯Eval("ss"),DataBinder好多都要不熟悉,也忘了什么时候网上转载记下

      DataBinder.Eval总结一、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。对于它我还需要进一步理解。

      二、DataBinder.Eval实现判断选择

      <asp:TemplateColumn HeaderText="性别">

      <ItemTemplate>

      <%# DGFormatSex(Convert.ToString(DataBinder.Eval(Container.DataItem,"xb"))) %>

      </ItemTemplate>

      </asp:TemplateColumn>

      cs里定义DGFormatSex方法

      protected string DGFormatSex(string xb)

      {

      if(xb == "1")

      return "男";

      else

      return "女";

      }

      DataBinder.Eval用法范例

      //显示二位小数

      //<%# DataBinder.Eval(Container.DataItem, "UnitPrice", "${0:F2}") %>

      //{0:G}代表显示True或False

      //<ItemTemplate>

      // <asp:Image Width="12" Height="12" Border="0" runat="server"

      // AlternateText='<%# DataBinder.Eval(Container.DataItem, "Discontinued", "{0:G}") %>'

      // ImageUrl='<%# DataBinder.Eval(Container.DataItem, "Discontinued", "~/images/{0:G}.gif") %>' />

      // </ItemTemplate>

      //转换类型

      ((string)DataBinder.Eval(Container, "DataItem.P_SHIP_TIME_SBM8")).Substring(4,4)

      {0:d} 日期只显示年月日

      {0:yyyy-mm-dd} 按格式显示年月日

      {0:c} 货币样式

    文章转载自网管之家:http://www.bitscn.com/pdb/dotnet/201003/181865.html

    下面是从别处转载的

    数字 {0:N2} 12.36

    数字 {0:N0} 13

    数字 {0:D} 12345 12345

    数字 {0:D8} 12345 00012345

    数字 {0:F} 12345.6789 12345.68

    数字 {0:F0} 12345.6789 12346

    数字 {0:G} 12345.6789 12345.6789

    数字 {0:G7} 123456789 1.234568E8

    货币 {0:c2} $12.36

    货币 {0:c4} $12.3656

    货币 "¥{0:N2}" ¥12.36

    科学计数法 {0:E3} 1.23E+001

    百分数 {0:P} 12.25%

    日期 {0:D} 2006年11月25日

    日期 {0:d} 2006-11-25

    日期 {0:f} 2006年11月25日 10:30

    日期 {0:F} 2006年11月25日 10:30:00

    日期 {0:s} 2006-11-26 10:30:00

    时间 {0:T} 10:30:00

    时间 {0:t} 10:30

    作者:于为源 出处: http://www.cnblogs.com/yuanyuan/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    奇数阶魔方问题
    《DSP using MATLAB》示例9.3
    《DSP using MATLAB》示例9.2
    《DSP using MATLAB》示例9.1
    找个目标很重要
    《DSP using MATLAB》示例Example 8.30
    《DSP using MATLAB》示例Example 8.29
    《DSP using MATLAB》示例Example 8.28
    《DSP using MATLAB》示例Example 8.27
    《DSP using MATLAB》示例Example 8.26
  • 原文地址:https://www.cnblogs.com/yuanyuan/p/1955305.html
Copyright © 2011-2022 走看看