• ASPxGridView 模糊过滤 查询(二)


    DataBinder.Eval()格式化绑定的相关补充

    过滤的时候经常遇到数字比大小这类的,我最近就遇到了这个问题,稍微描述下
    既然是数字,数据库里一般都是用的int,long这些类型,我遇到的这个偏偏要用varchar,结果读出来的数据绑定后就认定了它是[字符串]而不是数字,结果就是,无法比较大小,一般这种情况下修改数据库类型就完了,问题是不能修改的时候就麻烦了
     
    很多帖子都转帖说用这个转换类型,下面这些就是我转他们的

    --------------------------------------------------数据绑定DataBinder.Eval方法--------------------------------------------------------------------------------

    <%# DataBinder.Eval(Container.DataItem, "IntegerValue", "{0:c}") %>

    转换类型
    Specifier Type Format Output (Passed Double 1.42) Output (Passed Int -12400)
    c Currency {0:c} $1.42 -$12,400
    d Decimal {0:d} System.FormatException -12400
    e Scientific {0:e} 1.420000e+000 -1.240000e+004
    f Fixed point {0:f} 1.42 -12400.00
    g General {0:g} 1.42 -12400
    n Number with commas for thousands {0:n} 1.42 -12,400
    r Round trippable {0:r} 1.42 System.FormatException
    x Hexadecimal {0:x4} System.FormatException cf90


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


    样式取决于 Web.config 中的设置

    {0:c} 或 {0:£0,000.00} 货币样式 标准英国货币样式
    <system.web>
    <globalization requestEncoding="utf-8" responseEncoding="utf-8" culture="en-US" uiCulture="en-US" />
    </system.web>
    显示为 £3,000.10

    {0:c} 或 string.Format("{0:C}", price); 中国货币样式
    <system.web>
    <globalization requestEncoding="utf-8" responseEncoding="utf-8" culture="zh-cn" uiCulture="zh-cn" />
    </system.web>
    显示为 ¥3,000.10

    {0:c} 或 string.Format("{0:C}", price); 美国货币样式
    <system.web>
    <globalization requestEncoding="utf-8" responseEncoding="utf-8" />
    </system.web>
    显示为 $3,000.10
     
    ---------------------------------------------------------------其结果是二个字,没用---------------------------------------------------------------------
     
    由于我是初学者,想了两天,最后无奈只能用笨办法,自己创建DataSet的Table
    第一  DataSet ds = new DataSet();这个必须有,不然没法给ASPxGridView绑数据;
        然后用DataSet.Tables.Add();创建新表
    第二  你需要创建列
        Type 数据类型= System.Type.GetType("System.String");这个是创建列用的,里面的String可以改成Double等其他的,只要System下有的
        DataColumn dc= new DataColumn(列名, 数据类型);列肯定是要自己来创建的,列名就是给ASPxGridView绑定数据用的,
        ASPxGridView每个列标签的FieldName属性的值和这个列名必须一致的.
    第三  DataSet.Tables[0].Columns的AddRange()或Add()方法将这些列添加到你的表中
    第四  用for循环将数据库里的数据添加到我们的表里
        如:
        ds2.Tables[0].Rows.Add(ds.Tables[0].Rows[i]["列名1"],ds.Tables[0].Rows[i]["列名2"])   i 是for循环的变量
    最后将我们的dataset绑给GridView就行了
  • 相关阅读:
    Javascript设计模式学习(二)封装续
    Javascript设计模式学习(三)更多的高级样式
    【IBM Tivoli Identity Manager 学习文档】1 简介
    【读书笔记】测试驱动开发(中文版)
    【OpenCV学习】利用HandVu进行手部动作识别分析
    【生活】海淀驾校皮卡科目三实际道路考试备考
    【Linux开发技术之工具使用】配置VIM下编程和代码阅读环境
    【英语天天读】叶芝诗歌《当你老了》赏析——特别喜欢的一首诗,水木年华《一生有你》歌词来源
    【SIP协议】学习初学笔记
    【面向对象程序设计之CRC】CRC卡及其应用
  • 原文地址:https://www.cnblogs.com/carlows/p/2782649.html
Copyright © 2020-2023  润新知