zoukankan      html  css  js  c++  java
  • DataBinder.Eval总结

    DataBinder.Eval总结

    一、DataBinder.Eval的基本格式

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

    今天又学到一种,而且微软也说这种方法的效率要比以上两种高。
    <%# ((DataRowView)Container.DataItem)["xxxx"]%>

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

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

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

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

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

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

    Text='<%# "CarDetails.aspx?CarID=" + DataBinder.eval_r(Container.DataItem, "CarID") %>'

    还可以连接多个字段

    关键是Container这个东西,它比较神秘。它的名称空间是System.ComponentModel。对于它我还需要进一步理解。

    二、DataBinder.Eval实现判断选择
    <asp:TemplateColumn HeaderText="性别">
    <ItemTemplate>
    <%# DGFormatSex(Convert.ToString(DataBinder.eval_r(Container.DataItem,"xb"))) %>
    </ItemTemplate>
    </asp:TemplateColumn>

    cs里定义DGFormatSex方法
    protected string DGFormatSex(string xb)
    {
      if(xb == "1")
      return "男";
      else
      return "女";
    }

    DataBinder.Eval用法范例

    //显示二位小数
    //<%# DataBinder.eval_r(Container.DataItem, "UnitPrice", "${0:F2}") %>

    //{0:G}代表显示True或False
    //<ItemTemplate>
    // <asp:Image Width="12" Height="12" Border="0" runat="server"
    // AlternateText='<%# DataBinder.eval_r(Container.DataItem, "Discontinued", "{0:G}") %>'
    // ImageUrl='<%# DataBinder.eval_r(Container.DataItem, "Discontinued", "~/images/{0:G}.gif") %>' />
    // </ItemTemplate>

    //转换类型
    ((string)DataBinder.eval_r(Container, "DataItem.P_SHIP_TIME_SBM8")).Substring(4,4)

    {0:d} 日期只显示年月日
    {0:yyyy-mm-dd} 按格式显示年月日
    {0:c} 货币样式
     
     

  • 相关阅读:
    hbuilder(js+html+css)开发的APP效果实例
    基于ServiceStack.OrmLite框架 代码性能、开发效率皆第一 没有之一
    nodejs+IIS+WebMatrix
    小型设备嵌入式开发(.NET Micro Framework)
    SQL对数据进行统计、常用集合函数
    .Net Micro Framework 嵌入式开发
    js+html+css 开发App
    Dos.ORM
    ORM(ServiceStack,Moon,DbEntry,EasyDb,netnorm )
    商业款ORM servicestack llblgen
  • 原文地址:https://www.cnblogs.com/yeye518/p/2231742.html
Copyright © 2011-2022 走看看