- 浏览: 60257 次
- 性别:
- 来自: 广州
文章分类
最新评论
在 我们从业务逻辑层获得数据实体时候,接下来的事情就是要绑定到控件中。数据实体中的一些字段可以直接绑定到界面中,但是有一些字段需要重新格式化格式。比 如货币单位字段,需要显示货币符号和每隔三位显示分隔符;再比如日期字段,数据库中存放的是日期和时间,但是在界面上需要按照XXXX年XX月XX日的格 式显示。这时候我们就用到了DataFormatString 属性。
< asp : GridView ID ="grvResult" runat ="server" AutoGenerateColumns ="False" Width ="100%">
< Columns >
< asp : BoundField HeaderText =" 预定日期 " DataField ="OperationDate" DataFormatString ="{0:yyyy-MM-dd}" HtmlEncode ="False" >
</ asp : BoundField >
< asp : BoundField HeaderText =" 订单总计 " DataField ="TotalRate" DataFormatString ="{0:C}" HtmlEncode ="False" >
</ asp : BoundField >
</ Columns >
</ asp : GridView >
例如上面的代码展示了日期和货币两种绑定方式。DataFormatString 中的{0} 是固定的格式,这和String.Fromat(“{0}”, someString)中的{0}是一个用法,表示绑定上下文的参数索引编号。然后,在后面加入格式化字符串,具体的使用方法可以参考MSDN。
这里需要注意以下几点
1:在GridView中的asp
:
BoundField
使用DataFormatString
必须设置属性HtmlEncode
="False"
,否则不起作用。
2:如果需要使用日期类型的格式化字符串,必须数据实体中对应的字段也应该日起类型的。
3:格式化字符串C代表货币单位,需要绑定的数据类型应该是数字类型的。如果是字符串类型的不起作用,需要手动添加格式化字符串为DataFormatString =" ¥ {0:C}" 。
使用 DataFormatString 属性来提供列中各项的自定义格式。
获取或设置指定列中各项的显示格式的字符串。指定列中各项的显示格式的格式化字符串,默认值为 String.Empty。
数据格式字符串由以冒号分隔的两部分组成,形式为 { A : Bxx }。例如,格式化字符串 {0:F2} 将显示带两位小数的定点数。
整个字符串必须放在大括号内,表示它是格式字符串,而不是实际字符串。大括号外的任何文本均显示为实际文本。
冒号前的值指定在从零开始的参数列表中的参数索引。值只能设置为 0,因为每个单元格中只有一个值。
冒号后的字符指定值的显示格式。下表列出了一些常用格式。
格式字符
说明
C
以货币格式显示数值
D
以十进制格式显示数值。
E
以科学记数法(指数)格式显示数值。
F
以固定格式显示数值。
G
以常规格式显示数值。
N
以数字格式显示数值。
X
以十六进制格式显示数值。
MSDN示例:
<asp:BoundColumn HeaderText="Item" DataField="Item" ReadOnly="True" /> <asp:BoundColumn HeaderText="Quantity" DataField="Qty" DataFormatString="{0:N0}"/> <asp:BoundColumn HeaderText="Price" DataField="Price" DataFormatString="{0:c}" /> <asp:BoundColumn HeaderText="Weight" DataField="Weight" ReadOnly="True" DataFormatString="{0:F3}" /> <asp:BoundColumn HeaderText="Expires" DataField="Expires" ReadOnly="True" DataFormatString="{0:g}" />
格式日期:DataFormatString="{0: yyyy-MM-dd}"
格式时间:DataFormatString="{0: hh:mm:ss}"
说明:大写的M是 Month,小写的m是minute ,注意区别大小写,C#里其它时候了是这样的用法,要区别大小写。
格式字符串 输入 结果
"{0:C}" 12345.6789 $12,345.68
"{0:C}" -12345.6789 ($12,345.68)
"{0:D}" 12345 12345
"{0:D8}" 12345 00012345
"{0:E}" 12345.6789 1234568E+004
"{0:E10}" 12345.6789 1.2345678900E+004
"{0:F}" 12345.6789 12345.68
"{0:F0}" 12345.6789 12346
"{0:G}" 12345.6789 12345.6789
"{0:G7}" 123456789 1.234568E8
"{0:N}" 12345.6789 12,345.68
"{0:N4}" 123456789 123,456,789.0000
"Total: {0:C}" 12345.6789 Total: $12345.68
其常用的日期格式如下表所示:
格式 说明 输出格式
d 精简日期格式 MM/dd/yyyy
D 详细日期格式 dddd, MMMM dd, yyyy
f 完整格式 (long date + short time) dddd, MMMM dd, yyyy HH:mm
F 完整日期时间格式 (long date + long time) dddd, MMMM dd, yyyy HH:mm:ss
g 一般格式 (short date + short time) MM/dd/yyyy HH:mm
G 一般格式 (short date + long time) MM/dd/yyyy HH:mm:ss
m,M 月日格式 MMMM dd
s 适中日期时间格式 yyyy-MM-dd HH:mm:ss
t 精简时间格式 HH:mm
T 详细时间格式 HH:mm:ss
<asp:BoundField DataField="Email"
DataFormatString="<a href='mailto:{0}'>{0}</a>"
HeaderText="邮箱"
SortExpression="Email"
HtmlEncode="false"/>
发表评论
-
C#中怎么判断一个数组中是否存在某个数组值 转
2011-10-20 10:02 2165C#中怎么判断一个数组中是否存在某个数组值 作者: 李嘉 ... -
C#开发和调用Web Service (转)
2011-08-12 22:43 11481.1 、 Web Service 基 ... -
profile 实现购物车 实例(二)(转)
2011-07-29 14:27 1029上个例子,我见了两个类,一个商品类。一个购物车类。并把购物 ... -
profile 实现购物车 实例(一)(转)
2011-07-29 14:25 977首先要了解什么是Profile,不了解就查下资料跟MSDN ... -
Profile的简单的配置与操作(转)
2011-07-29 14:20 1015下面由我来给大家配置一个 Profile与 Profile ... -
Profile实现购物车(应用Profile)(转)
2011-07-29 14:15 985上面我已经介绍过了 Profile的配置和简单应用了,如果大 ... -
浅析Microsoft .net PetShop程序中的购物车和订单处理模块(Profile技术,异步MSMQ消息)
2011-07-29 11:55 1370对于Microsoft .net PetShop程序中的购物车 ... -
大型网站访问性能处理(转集)
2011-07-28 14:14 1041高性能网站性能优化与系统架构(ZT) 说说大型高并发高 ... -
不使用DalFactory和IDAL,支持多种数据库应用
2011-07-27 23:23 2MS的PetShop示例应用程序的“多层架构”被很多.NET开 ... -
ASP.NET页面刷新方法总结(顺便散分)
2011-07-07 15:17 1143先看看ASP.NET页面刷新的实现方法: 第一: ... -
c#将对象序列化为字符串和将字符串反序列化为对象
2011-06-30 11:23 1546c#将对象序列化为字符串和将字符串反序列化为对象 a ... -
provider: SQL 网络接口, error: 26 解决方法 图
2011-06-03 10:06 6542在建立与服务器的连接时出错。在连接到 SQL Server 2 ... -
Server.Execute和#include相异之处
2011-05-17 13:37 696server 是 ASP 中的一个内置对象, 有一个方法为 ... -
Response.Redirect(),Server.Transfer(),Server.Execute()的区别.docx
2011-05-17 11:48 11621 、 Response.Redirect(): ... -
win7下装不了vs2008的情况
2011-04-09 01:11 667vs2005与vs2008都是镜像文件 ,所以用了虚拟光驱,装 ... -
ASP.NET + SQL 分页存储过程以及对应的类
2011-03-21 16:57 970ASP.NET + SQL 分页存 ... -
ASP.NET 错误页处理
2011-03-19 21:46 981ASP.NET 提供三种用于在出现错误时捕获和响应错误的主 ... -
asp.net 伪静态 html 后面带参数
2011-03-16 21:22 2012例如:faq_1.html?id=2 相关设置请在网上 ... -
ASP.NET 伪静态 静态页 访问不了 方法
2010-12-31 11:14 1969本站基于asp.net+UrlRewriter来实现网站伪 ... -
五种常见的ASP.NET安全缺陷
2010-11-25 23:41 824保证应用程序的安全 ...
相关推荐
DataFormatString是很多Asp.Net控件都有的属性,如GridView等等,下面简单介绍一下这个属性,感兴趣的朋友不要错过
asp:BoundField DataField=”BeginDate” HeaderText=”开始时间” DataFormatString=”{0:d}” htmlencode=”false” HeaderStyle-HorizontalAlign=”Center” ItemStyle-HorizontalAlign=”Cente
关于.net中dataFormatString的实例
使用DataFormatString 使用Format相关函数 9-2-2资料转换 Ctype函数 ToString Null的处理 避免错误的设计 第十章结构化设计 10-1使用Pagelet 10-1-1 Pagelet的基本架构 Pagelet...
本文实例讲述了Gridview利用DataFormatString属性设置数据格式的方法。分享给大家供大家参考,具体如下: 首先把Gridview的AutoGenerateColumns属性设为False(默认是False),DataField选择相应的字段,特别需要...
在.net中,查了半天msdn,发现使用DataFormatString是可以实现这个功能的,但是怎么设置就不起作用,最后发现,由于2.0出于安全性的考虑,还要同时设置HtmlEncode = false,才能够使DataFormatString生效. 留个记号,下次用...
用DataFormatString格式化GridView 在 GridView里面显示数据,要显示的数据有好多位小数,就想让它只显示两位小数,在delphi里,直接用DisplayFormat就行了, 在.net中,查了半天msdn,发现使用DataFormatString是可以实现...
在 GridView里面显示数据,要显示的数据有好多位小数,就想让它只显示两位小数,在delphi里,直接用DisplayFormat就行了, 在.net中,查了半天msdn,发现使用DataFormatString是可以实现这个功能的,但是怎么设置就不起作用,...
<ASP:BOUNDCOLUMN DATAFIELD= "JoinTime " DATAFORMATSTRING= "{0:yyyy-MM-dd} " > <ITEMSTYLE WIDTH= "18% " > 2.数据控件如DataGrid/DataList等的件格式化日期方法: e.Item.Cell[0].Text = Convert.ToDateTime...
19.GridView中的方法使用(格式,DataFormatString),设置行列属性 当满足条件后,隐藏某些ImageButton 20.GridView控件的模板列使用方法 21.当数据的值小于?时,显示不同的图标 22.关于在GridView中显示摘要(这个...
GridView精典总结 GridView精典总结 1、控制字符数量的输出 1)转换该列为模板列 ...把tmoney这列改成人民币样式:编辑列,设置tmoney列的DataFormatString属性为{0:c},再设置HtmlEncode属性设置成false
/// <summary> /// 单选按钮列 /// </summary> /// <remarks> /// 如果没有设置GroupName,则使用GridView的ID作为GroupName /// 如果没有设置DataField,则使用RowIndex作为Value /// 允许设置DataFormatString格式...
1. 数据控件绑定时格式化日期方法: 代码如下: ”AddTime” HeaderText=”添加时间” DataFormatString=”{0:yyyy-MM-dd></asp> ”AddTime” HeaderText=”添加时间” DataFormatString=”{0:yyyy-MM-dd}”> 2....
第一步:设置好你所需要的gridview所需要的Columns列,绑定好数据,我的第一列的数据因为数据库中保存的是“日月年时分秒”的格式,在输出的时候,我给它加了一个dataformatstring的值“{0:yyyy-MM-dd}”,年月日的...
-修正了Grid列属性DataFormatString的一个bug,比如设置{0:yy-MM-dd HH:mm}时没有效果。 -修正下拉列表控件不能绑定DataTable的BUG(feedback:RedOcean)。 -增加土耳其语言资料文件(feedback:abdullaharslan)。 -...
可以在Gridview里面只显示年月日,不会出现0:00:00
DataFormatString="{0:yyyy-MM-dd}" 我觉得应该在itembound事件中 e.items.cell["你的列"].text=DateTime.Parse(e.items.cell["你的列"].text.ToString("yyyy-MM-dd")) 19.获取错误信息并到指定页面 不要...