GridView中DataFormatString属性
gridview属性介绍
![gridview属性介绍](https://img.taocdn.com/s3/m/243fe700a6c30c2259019e26.png)
gridview 属性介绍页首公共属性(请参见受保护的属性)名称说明GridView 初始化GridView 类的新实例。
名称说明AccessKey获取或设置使您得以快速导航到Web 服务器控件的访问键。
(从WebControl 继承。
)AllowPaging 获取或设置一个值,该值指示是否启用分页功能。
AllowSorting获取或设置一个值,该值指示是否启用排序功能。
AlternatingRowStyle获取对TableItemStyle 对象的引用,使用该对象可以设置GridView 控件中的交替数据行的外观。
AppRelativeTemplateSourceDirectory获取或设置包含该控件的Page 或UserControl 对象的应用程序相对虚拟目录。
(从Control 继承。
)Attributes获取与控件的属性不对应的任意特性(只用于呈现)的集合。
(从WebControl 继承。
)AutoGenerateColumns 获取或设置一个值,该值指示是否为数据源中的每个字段自动创建绑定字段。
AutoGenerateDeleteButton 获取或设置一个值,该值指示每个数据行都带有“删除”按钮的CommandField字段列是否自动添加到GridView控件。
AutoGenerateEditButton 获取或设置一个值,该值指示每个数据行都带有“编辑”按钮的CommandField字段列是否自动添加到GridView控件。
AutoGenerateSelectButton 获取或设置一个值,该值指示每个数据行都带有“选择”按钮的CommandField字段列是否自动添加到GridView控件。
BackColor 获取或设置Web服务器控件的背景色。
(从WebControl继承。
)BackImageUrl 获取或设置要在GridView控件的背景中显示的图像的URL。
BindingContainer 获取包含该控件的数据绑定的控件。
第八章 使用GridView显示数据
![第八章 使用GridView显示数据](https://img.taocdn.com/s3/m/34908fd1b14e852458fb574d.png)
第八章使用GridView显示数据一、使用GridView控件显示数据1.在GridView控件中显示查询结果(显示所有列)配置数据源过程中,使用“where条件查询”和“order by排序”2.显示指定的列数据(部分列)(1). 删除不显示的列,只保留要显示的列(2). 隐藏列:将Visible属性设置为False(3). 使用HyperLinkField列类型制作“新闻详情”的超链接3.按指定样式显示数据(1). Substring() 方法:截取字符串的一部分例如:string s=”sqldatasource”;string s1=s.Substring(3,4); // 返回值: datastring s2=s.Substring(0,5); //返回:sqlda注意:第一个参数为字符串的左起始位数(从0开始),第二个参数为截取字符串的位数(长度)(2).案例:将新闻标题长度超过15个字时,超出部分显示“…”将BoundField 字段转换为 TemplateFielda.条件运算符:?:b.如:Convert.ToString(Eval("title")).Length>15?Convert.ToString(Eval("title")).Subst ring(0,15)+"......":Eval("title")(3).格式化日期属性:DataFormatString={0:格式字符串}(4). EmptyDataText属性当没有查询到任何记录时,显示此属性设置的值PagerSettings 对象的Mode 属性:二、使用GridView控件更新和删除数据1.更新数据(1).自定义方法,实现字符串截断public static string trunc(string instr, int len){if (instr.Length>30){instr = instr.Substring(0,len)+"...";}return instr;}(2).鼠标悬停时,出现提示框(ToolTip属性)<ItemTemplate><asp:Label ID="Label1"runat="server"Text='<%#trunc(Convert.ToString(Eval("summary")),30) %>'ToolTip='<%# Eval("summary") %>'>'></asp:Label></ItemTemplate>(3).将CommandField下的“编辑、更新、取消”添加2.删除数据(1). 将CommandField下的“删除”添加(2). 修改DeleteCommand语句,同时删除另一个表的关联数据(3). 删除前弹出提示框将“删除”字段转换为 TemplateFieldOnClientClick="return confirm('确认要删除此信息吗?');。
DatetimeFormatString
![DatetimeFormatString](https://img.taocdn.com/s3/m/5bfbaf2bbd64783e09122b5e.png)
用DataFormatString格式化GridView在GridView里面显示数据,要显示的数据有好多位小数,就想让它只显示两位小数,在delphi里,直接用DisplayFormat就行了,在.net中,查了半天msdn,发现使用DataFormatString是可以实现这个功能的,但是怎么设置就不起作用,最后发现,由于2.0出于安全性的考虑,还要同时设置HtmlEncode = false,才能够使DataFormatString生效.留个记号,下次用的时候,就不用浪费N多时间了.还有还有,DataFormatString = "{0:F}",是默认格式,显示两位小数,如果需要显示的小数位数为其他值,Dat aFormatString = "{0:Fn}"即可.DataFormatString="{0:格式字符串}"在DataFormatString 中的{0} 表示数据本身,而在冒号后面的格式字符串代表所们希望数据显示的格式;数字、货币格式:在指定的格式符号后可以指定小数所要显示的位数。
例如原来的数据为「1.56」,若格式设定为{0:N1},则输出为「1.5」。
其常用的数值格式如下表所示:格式字符串输入结果"{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/yyyyD 详细日期格式dddd, MMMM dd, yyyyf 完整格式(long date + short time) dddd, MMMM dd, yyyy HH:mmF完整日期时间格式(long date + long time)dddd, MMMM dd, yyyy HH:mm:ssg 一般格式(short date + short time) MM/dd/yyyy HH:mm G 一般格式(short date + long time) MM/dd/yyyy HH:mm:ss m,M 月日格式MMMM dds 适中日期时间格式yyyy-MM-dd HH:mm:sst 精简时间格式HH:mmT 详细时间格式HH:mm:ss。
GridView详解
![GridView详解](https://img.taocdn.com/s3/m/696421fb910ef12d2af9e7e9.png)
GridView 类更新:2008 年7 月在表中显示数据源的值,其中每列表示一个字段,每行表示一条记录。
使用GridView控件可以选择和编辑这些项以及对它们进行排序。
命名空间:System.Web.UI.WebControls程序集: System.Web(在System.Web.dll 中)语法VBC#C++F#JScript打印[ControlValuePropertyAttribute("SelectedValue")]publicclass GridView : CompositeDataBoundControl, IPostBackContainer,IPostBackEventHandler, ICallbackContainer, ICallbackEventHandler, IPersistedSelector, IDataKeysControl,IDataBoundListControl, IDataBoundControl, IFieldControl 打印<asp:GridView />备注本主题内容:∙∙∙∙∙∙∙∙介绍GridView控件用于显示表中数据源的值。
每列表示一个字段,而每行表示一条记录。
GridView控件支持下列功能:∙∙内置排序功能。
∙内置更新和删除功能。
∙内置分页功能。
∙内置行选择功能。
∙以编程方式访问GridView对象模型以动态设置属性、处理事件等。
∙多个键字段。
∙用于超链接列的多个数据字段。
∙可通过主题和样式进行自定义的外观。
∙说明通过将AutoGenerateColumns属性设置为false,然后定义您自己的列字段集合,您也可以手动控制哪些列字段将显示在GridView控件中。
不同的列字段类型决定控件中各列的行为。
下表列出了可以使用的不同列字段类型。
若要以声明方式定义列字段集合,请首先在GridView控件的开始和结束标记之间添加<Columns>开始和结束标记。
GridView控件事件详解
![GridView控件事件详解](https://img.taocdn.com/s3/m/0304ad8fa0116c175f0e48e5.png)
GridView是一个非常强大的控件,它支持分页,排序等等,我想每个人都应该用过这个控件,最近有个网友问了我一些问题,平时也没多大的注意,只要能满足自己的一些需求就没有深入的研究.通过了一段时间的研究发现功能强大的同时所带来的事件也是相当之多,在网上收集了一下,网上的资源还是很丰富的.以下事件原文地址:/Content,2006,8,14,165.aspx.RowCommand在GridView 控件中单击某个按钮时发生。
此事件通常用于在该控件中单击某个按钮时执行某项任务。
PageIndexChanging在单击页导航按钮时发生,但在GridView 控件执行分页操作之前。
此事件通常用于取消分页操作。
PageIndexChanged在单击页导航按钮时发生,但在GridView 控件执行分页操作之后。
此事件通常用于在用户定位到该控件中不同的页之后需要执行某项任务时。
SelectedIndexChanging在单击GridView 控件内某一行的Select 按钮(其CommandName 属性设置为“Select”的按钮)时发生,但在GridView 控件执行选择操作之前。
此事件通常用于取消选择操作。
SelectedIndexChanged在单击GridView 控件内某一行的Select 按钮时发生,但在GridView 控件执行选择操作之后。
此事件通常用于在选择了该控件中的某行后执行某项任务。
Sorting在单击某个用于对列进行排序的超链接时发生,但在GridView 控件执行排序操作之前。
此事件通常用于取消排序操作或执行自定义的排序例程。
Sorted在单击某个用于对列进行排序的超链接时发生,但在GridView 控件执行排序操作之后。
此事件通常用于在用户单击对列进行排序的超链接之后执行某项任务。
RowDataBound在GridView 控件中的某个行被绑定到一个数据记录时发生。
此事件通常用于在某个行被绑定到数据时修改该行的内容。
Gridview 控件属性及应用
![Gridview 控件属性及应用](https://img.taocdn.com/s3/m/713ff9e46294dd88d0d26bfe.png)
GridView控件属性及应用GridView是 1.x的DataGrid控件的后继者。
它提供了相同的基本功能集,同时增加了大量扩展和改进。
如前所述,DataGrid( 2.0仍然完全支持)是一个功能非常强大的通用控件。
然而,它有一个重大缺陷:它要求我们编写大量定制代码,甚至处理比较简单而常见的操作,诸如分页、排序、编辑或删除数据等也不例外。
GridView控件旨在解决此限制,并以尽可能少的数据实现双向数据绑定。
该控件与新的数据源控件系列紧密结合,而且只要底层的数据源对象支持,它还可以直接处理数据源更新。
这种实质上无代码的双向数据绑定是新的GridView控件最著名的特征,但是该控件还增强了很多其他功能。
该控件之所以比DataGrid控件有所改进,是因为它能够定义多个主键字段、新的列类型以及样式和模板选项。
GridView还有一个扩展的事件模型,允许我们处理或撤销事件。
GridView控件为数据源的内容提供了一个表格式的类网格视图。
每一列表示一个数据源字段,而每一行表示一个记录。
1. GridView控件的属性GridView支持大量属性,这些属性属于如下几大类:行为、可视化设置、样式、状态和模板。
行为属性描述AllowPaging 指示该控件是否支持分页。
AllowSorting 指示该控件是否支持排序。
AutoGenerateColumns 指示是否自动地为数据源中的每个字段创建列。
默认为true。
AutoGenerateDeleteButton 指示该控件是否包含一个按钮列以允许用户删除映射到被单击行的记录。
AutoGenerateEditButton 指示该控件是否包含一个按钮列以允许用户编辑映射到被单击行的记录。
AutoGenerateSelectButton 指示该控件是否包含一个按钮列以允许用户选择映射到被单击行的记录。
DataMember 指示一个多成员数据源中的特定表绑定到该网格。
史上最全GridView使用方法
![史上最全GridView使用方法](https://img.taocdn.com/s3/m/8d528723240c844768eaee2d.png)
史上最全GridView使用方法快速预览:GridView无代码分页排序GridView选中,编辑,取消,删除GridView正反双向排序GridView和下拉菜单DropDownList结合GridView和CheckBox结合鼠标移到GridView某一行时改变该行的背景色方法一鼠标移到GridView某一行时改变该行的背景色方法二GridView实现删除时弹出确认对话框GridView实现自动编号GridView实现自定义时间货币等字符串格式GridView实现用“...”代替超长字符串GridView一般换行与强制换行GridView显示隐藏某一列GridView弹出新页面/弹出新窗口GridView固定表头(不用javascript只用CSS,2行代码,很好用) GridView合并表头多重表头无错完美版〔以合并3列3行举例〕GridView突出显示某一单元格〔例如金额低于多少,分数不及格等〕GridView加入自动求和求平均值小计GridView数据导入Excel/Excel数据读入GridView在对GridView编辑的时候实现自动计算实现类似winform的点击行选中功能GridView在编辑的时候控制编辑框的列宽。
给Gridview加入Tooltip的功能:效果图:1.AllowSorting设为True,aspx代码中是AllowSorting="True";2.默认1页10条,如果要修改每页条数,修改PageSize即可,在aspx代码中是PageSize="12"。
3.默认的是单向排序的,右击GridView弹出“属性”,选择AllowSorting为True即可。
2.GridView选中,编辑,取消,删除:效果图:后台代码:你可以使用sqlhelper,本文没用。
代码如下:using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Data.SqlClient;public partial class _Default : System.Web.UI.Page{//清清月儿SqlConnection sqlcon;SqlCommand sqlcom;string strCon = "Data Source=(local);Database=数据库名;Uid=帐号;Pwd=密码";protected void Page_Load(object sender, EventArgs e){if (!IsPostBack){bind();}}protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) {GridView1.EditIndex = e.NewEditIndex;bind();}//删除protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) {string sqlstr = "delete from 表where id='" +GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";sqlcon = new SqlConnection(strCon);sqlcom = new SqlCommand(sqlstr,sqlcon);sqlcon.Open();sqlcom.ExecuteNonQuery();sqlcon.Close();bind();}//更新protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) {sqlcon = new SqlConnection(strCon);string sqlstr = "update 表set 字段1='"+((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim() + "',字段2='"+((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim() + "',字段3='"+((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim() + "' where id='"+ GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";sqlcom=new SqlCommand(sqlstr,sqlcon);sqlcon.Open();sqlcom.ExecuteNonQuery();sqlcon.Close();GridView1.EditIndex = -1;bind();}//取消protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e){GridView1.EditIndex = -1;bind();}//绑定public void bind(){string sqlstr = "select * from 表";sqlcon = new SqlConnection(strCon);SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);DataSet myds = new DataSet();sqlcon.Open();myda.Fill(myds, "表");GridView1.DataSource = myds;GridView1.DataKeyNames = new string[] { "id" };//主键GridView1.DataBind();sqlcon.Close();}}前台主要代码:... ...<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4"ForeColor="#333333" GridLines="None"OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing"OnRowUpdating="GridView1_RowUpdating"OnRowCancelingEdit="GridView1_RowCancelingEdit"><FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /><Columns><asp:BoundField DataField="身份证号码" HeaderText="用户ID" ReadOnly="True" /><asp:BoundField DataField="" HeaderText="用户" /><asp:BoundField DataField="职工性别" HeaderText="性别" /><asp:BoundField DataField="家庭住址" HeaderText="家庭住址" /><asp:CommandField HeaderText="选择" ShowSelectButton="True" /><asp:CommandField HeaderText="编辑" ShowEditButton="True" /><asp:CommandField HeaderText="删除" ShowDeleteButton="True" /> </Columns><RowStyle ForeColor="#000066" /><SelectedRowStyle BackColor="#669999" Font-Bold="True"ForeColor="White" /><PagerStyle BackColor="White" ForeColor="#000066"HorizontalAlign="Left" /><HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" /></asp:GridView>3.GridView正反双向排序:〔用到数据库视图DATAVIEW及GRIDVIEW的VIEWSTAT 类〕效果图:点各2次的排序,点其他也一样可以。
(完整版)Gridview控件的使用
![(完整版)Gridview控件的使用](https://img.taocdn.com/s3/m/71e36faaa5e9856a5712606c.png)
在Gridview中添加超链接列进入Gridview的【编辑列…】窗口进行编辑,如图:在【可用字段】里选择HyperLinkField,单击【添加】按钮。
然后选择在【选定的字段】中,选择刚添加的这个HyperLinkField。
在右边按照图示进行设置:外观-Text:设置链接的文字。
外观-HeaderText:设置链接列的标题。
数据-DataNavigateUrlFields:设置超链接要传递的参数,这里写的“id,name”表示要传递id和name这两个字段的值,注意用逗号分隔,可以设置多个字段。
数据-DataNavigateUrlFormatString:设置要链接到的页面和传递的参数。
Default2.aspx?id={0}&name={1}表示要链接到Default2.aspx页面。
这里的{0}表示在形成链接时{0}将会被DataNavigateUrlFields中设置的第一个参数实际的值替代,在我们这里是id,{1}将会被name的实际值替代。
最终形成的页面代码如下:<asp:GridView ID="cityList"runat="server"AutoGenerateColumns="False"><Columns><asp:BoundField DataField="id"HeaderText="编码"/><asp:BoundField DataField="name"HeaderText="名称"/><asp:HyperLinkField DataNavigateUrlFields="id,name" DataNavigateUrlFormatString="Default2.aspx?id={0}&name={1}" HeaderText="操作"Text="修改"/></Columns></asp:GridView>后置代码如下:using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Data.SqlClient;public partial class _Default : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){SqlConnection conn =new SqlConnection("Data Source=.;Initial Catalog=demo;User ID=sa;Password=sa1");DataSet citySet = null;try{SqlDataAdapter adapter =new SqlDataAdapter("select * from city", conn);citySet =new DataSet();adapter.Fill(citySet, "city");}catch (SqlException ex){Console.WriteLine(ex.Message);}finally{conn.Close();}cityList.DataSource= citySet;DataBind();}}这时,浏览页面看效果,如图:如果把鼠标移动到超链接上,观察形成的链接,效果如图:给Gridview添加复选框点击Gridview右上角的三角按钮,选择【编辑列…】,添加一个TemplateField:然后单击向上的按钮,将这个TemplateField移动到最上面:这样,我们就为Gridview添加了一个TemplateField,并且将这个TemplateField排到第一列。
Sql 中取小数点后面两位小数
![Sql 中取小数点后面两位小数](https://img.taocdn.com/s3/m/34d8f469168884868762d6d7.png)
Sql 中取小数点后面两位小数select convert(numeric(8,2),round(UnTaxAmount,2))as UnTaxAmount from View_SaleVoiceselect cast(UnTaxAmount as decimal(20,2)) as UnTaxAmount from View _SaleVoice Datagrid,DataList,Repeate等的数据格式设置表达式DataFormatString="{0:N0}%“DataFormatString="${0:N2}"DataFormatString="{0:N0}个"DataFormatString="No.{0:N0}"DataFormatString="{0:yyyy-MM-dd hh:mm:ss}"数据格式设置表达式.NET Framework 格式设置表达式,它在数据显示在列中之前先应用于数据。
此表达式由可选静态文本和用以下格式表示的格式说明符组成:{0:format specifier}0 是参数索引,它指示列中要格式化的数据元素;因此,通常用零来指示第一个(且唯一的)元素。
format specifier 前面有一个冒号(:),它由一个或多个字母组成,指示如何格式化数据。
可以使用的格式说明符取决于要格式化的数据类型:日期、数字或其他类型。
下表显示了不同数据类型的格式设置表达式的示例。
有关格式设置表达式的更多信息,请参见格式化类型。
格式设置表达式应用于此数据类型说明Price: {0:C} numeric/decimal 显示“Price:”,后跟以货币格式表示的数字。
货币格式取决于通过Page 指令或Web.config 文件中的区域性属性指定的区域性设置。
{0:D4} integer(不能和小数一起使用。
GridView1 删除、修改(字段类型全而且用GridView集成处理)
![GridView1 删除、修改(字段类型全而且用GridView集成处理)](https://img.taocdn.com/s3/m/baecd4150b4e767f5acfcea0.png)
张家口教育学院教育技术中心 第 1 页 共 21 页删除、修改记录(字段类型全、GridView 集成处理、双向排序、翻页、绑定列)2010.10.30学习内容:TemplatedField 模板列技术、使用绑定列技术、鼠标所在行颜色提示、绑定列中使用下拉列表框、设置字段的ControlStyle 属性运行态1. 在VS2008中建立Web项目。
2. 在Windows环境下将数据库jyxystu.mdf(命名含义为教育学院学生)和jyxystu.ldf拷贝到项目的App_Data目录下,并在VS中添加的项目中。
张家口教育学院教育技术中心第2 页共21 页3. 在SQL Server 2000中附加数据库jyxystu.mdf。
4. 在数据库中建立一个表:tb_zg(命名含义为职工表,以tb开头意思是本对象是一个表),表结构如下:5. 录入若干条记录(为了看出效果,记录数至少20条)6. 修改web.config文件,(1) 删除</configSections>下方的<appSettings/>(2) 在</configSections>位置下增加:张家口教育学院教育技术中心第3 页共21 页<appSettings><add key="ConnStr" value="Server=localhost;uid=sa;pwd=;database=jyxystu"></add>7. 在项目中添加Web窗体mygridview.aspx(文件名含义为按类查询)8. 布局控件如下:一个GridView,在GridView下方有两个label,准备显示第x页共y页。
ID属性分别是Label1和Label2。
GridView1自动套用格式为"雪松"。
AutoGenerateColumns="False"AllowSorting="True"AllowPaging="True"PageSize="10"因为要采用分页技术所以需要再设置PagerSettings属性FirstPageText="首页"LastPageText="尾页"NextPageText="下一页"PreviousPageText="上一页"Mode="NextPreviousFirstLast"把GridView中的FontSize设为small。
使用GridView显示数据
![使用GridView显示数据](https://img.taocdn.com/s3/m/bf59ad4e767f5acfa1c7cd55.png)
FirstPageText PreviousPageText NextPageText LastPageText FirstPageImageUrl PreviousPageImageUrl NextPageImageUrl LastPageImageUrl
说明
第一页按钮的文字 上一页按钮的文字 下一页按钮的文字 最后一页按钮的文字 第一页按钮显示的图像的 URL 上一页按钮显示的图像的 URL 下一页按钮显示的图像的 URL 最后一页按钮显示的图像的 URL
5
使用GridView显示数据 显示数据 使用
新闻表
字段名
newsId visible title date content category hot
类型
int bit nvarchar datetime ntext nvarchar bit
描述
主键,自增 主键 自增 是否可见 新闻标题 日期 新闻内容 排序号 新闻类型 是否热点新闻
14
使用GridView更新数据 更新数据 使用
需求描述
以列表的形式展示所有产品信息 概要描述的长度如果超过30个字符,则只显示30 30个字符 概要描述的长度如果超过30个字符,则只显示30 个字符,其他用“ .. ..”代替 个字符,其他用“….. 代替 鼠标放在概要描述上时可以看到全部信息 允许修改显示的全部数据
16
使用GridView更新数据 更新数据 使用
实现思路
实现后台方法并在 TemplateField 列中调用
public static string trunc(string inStr, int len) { if (inStr.Length > len) { inStr = inStr.Substring(0, len) + "......"; } return inStr; } 方法调用 <asp:Label ID="Label3" runat="server" Text='<%# trunc(Convert.ToString(Eval("summary")),30)%>' ToolTip='<%# Eval("summary") %>'></asp:Label> 文字提示
GirdView1的常用属性
![GirdView1的常用属性](https://img.taocdn.com/s3/m/3e4ca989bceb19e8b8f6baaf.png)
C#中gridView常用属性和技巧介绍- 凌风95时间 2014-08-15 00:37:00 博客园-所有随笔区原文/zhao123/p/3913772.html1.隐藏最上面的GroupPanelgridView1.OptionsView.ShowGroupPanel=false;2.得到当前选定记录某字段的值sValue=Table.Rows[gridView1.FocusedRowHandle][FieldName].ToString();3.数据只读gridView1.OptionsBehavior.Editable=false;4.不显示MasterDetailViewgridView1.OptionsDetail.EnableMasterViewMode=false;5.修改最上面的GroupPanel内容gridView1.GroupPanelText="柳生飘絮";6.设置数据源:gridControl1.DataSource = dt;绑定每一列的FiledName--属性对于Oracle数据库,所有的在设计器里写的程序中的字段名必须大写,否则可能绑定不上字段,sqlser ver没有这个限制.7.读写拷贝权限设置只读不可拷贝:ColumnViewOptionsBehavior.Editable = False只读可拷贝:ColumnViewOptionsBehavior.Editable = TrueOptionsColumn.AllowEdit = TrueOptionsColumn.ReadOnly = True可编辑:ColumnViewOptionsBehavior.Editable = TrueOptionsColumn.AllowEdit = TrueOptionsColumn.ReadOnly = False8.模板列的设置:到Columns中,在他的属性中找到ColumnEdit.以LookUpEdit为例:首先从Designer左边菜单In-Place Editor Repository中添加LookUpEdit.取名为Re1.然后.在他的Columns属性中添加3列.Caption依次为:编号,姓名,性别.FieldName依次为:FID,FNAME,FSEX.然后将Re1的NullText设置成空.AutoSearchColumnIndex属性设置为2.ImmediatePopup属性设置为True.SearchMode设置为OnlyInPopup.然后将这个模板列附加到我们上面提到的列1(也就是将列1的ColumnEdit属性设成Re1)最后我们还要在代码里面给Re1绑定数据源和显示项.Re1.DataSource = DALUse.Query("select fid,fname,fsex from dual").Tables[0]; Re1.DisplayMember = "FSEX";Re1.ValueMember = "FNAME";9.设某一列文字和标题局中显示gridView1.Columns[0].AppearanceHeader.TextOptions.HAlignment = DevExpress.Utils.H orzAlignment.Center;gridView1.Columns[0].AppearanceCell.TextOptions.HAlignment = DevExpress.Utils.Hor zAlignment.Center;10.去掉某一列上面的自动筛选功能(Filter)gridView1.Columns[0].OptionsFilter.AllowAutoFilter = false;gridView1.Columns[0].OptionsFilter.AllowFilter = false; gridView1.Columns[0].OptionsFilter.ImmediateUpdateAutoFilter = false;11.设置冻结列(左冻结)gridView1.Columns[0].Fixed= DevExpress.XtraGrid.Columns.FixedStyle.Left;12.得到单元格数据(0行0列)string ss=gridView1.GetRowCellDisplayText(0, gridView1.Columns[0]);string ss = gridView1.GetRowCellValue(0, gridView1.Columns[0]);13.设置单元格数据(将0行0列的单元格赋值123)gridView1.SetRowCellValue(0, gridView1.Columns[0], "123");13.手动添加dev的列DevExpress.XtraGrid.Columns.GridColumn Col1=new DevExpress.XtraGrid.Columns.GridCo lumn ();Col1.FieldName="FID";Col1.Visible=true;Col1.VisibleIndex=gridView1.Columns.Count;gridView1.Columns.Add(Col1);14.设置自动增加的行号,需要先添加给gridview添加事件CustomDrawRowIndicatorprivate void gridview_CustomDrawRowIndicator(object sender, DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs e){if (.IsRowIndicator && e.RowHandle >= 0).DisplayText = (e.RowHandle + 1).ToString();}15.删除: (修改了dgvdel里的datagridviewdel方法)public static void datagridviewdel_Dev(DevExpress.XtraGrid.Views.Grid.GridView M ydgv){if (MessageBox.Show("你确定要删除选中的记录吗?", "删除提示", MessageBoxButtons. YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2, 0, fals e) == DialogResult.Yes){int iSelectRowCount = Mydgv.SelectedRowsCount;if (iSelectRowCount > 0){Mydgv.DeleteSelectedRows();}}}16. 新增: (对于新增,其本身的AddNewRow方法就可以做到)private void btn_add_Click(object sender, EventArgs e){gridView1.AddNewRow();}具体如果对于新加行还有什么特别的设置,可以在它gridView1_InitNewRow事件中填写:private void gridView1_InitNewRow(object sender, DevExpress.XtraGrid.Views.Grid. InitNewRowEventArgs e){ColumnView View = sender as ColumnView;View.SetRowCellValue(e.RowHandle, View.Columns[0], gridView1.GetRowCellValue (gridView1.GetRowHandle(gridView1.RowCount - 2), gridView1.Columns[0])); //复制最后一行的数据到新行View.SetRowCellValue(e.RowHandle, View.Columns[1], gridView1.GetRowCellVa lue(gridView1.GetRowHandle(gridView1.RowCount - 2), gridView1.Columns[1])); //复制最后一行的数据到新行}17. 保存 (第三方控件提供的RefreshData和RefreshDataSource方法对于保存数据都不好使,最后还是使用了Dgvsave的datagridviewsave方法,用这个方法就可以)18.特效:gridcontrol中有5种view 型式,普通的是gridview,然后分别为cardview、BandedVie w、Advanced BandedView、LayoutView;共5种。
.NET日期格式化
![.NET日期格式化](https://img.taocdn.com/s3/m/f9a4c60c0640be1e650e52ea551810a6f524c8e5.png)
.NET⽇期格式化GridView中Dataformatstring 格式化⽇期应注意的问题1、HtmlEncode="False"2、DataFormatString="{0:d}"C#格式化⽇期时间DateTime dt = DateTime.Now;Label1.Text = dt.ToString();//2005-11-5 13:21:25Label2.Text = dt.ToFileTime().ToString();//127756416859912816Label3.Text = dt.ToFileTimeUtc().ToString();//127756704859912816Label4.Text = dt.ToLocalTime().ToString();//2005-11-5 21:21:25Label5.Text = dt.ToLongDateString().ToString();//2005年11⽉5⽇Label6.Text = dt.ToLongTimeString().ToString();//13:21:25Label7.Text = dt.ToOADate().ToString();//38661.5565508218Label8.Text = dt.ToShortDateString().ToString();//2005-11-5Label9.Text = dt.ToShortTimeString().ToString();//13:21Label10.Text = dt.ToUniversalTime().ToString();//2005-11-5 5:21:25?2005-11-5 13:30:28.4412864Label1.Text = dt.Year.ToString();//2005Label2.Text = dt.Date.ToString();//2005-11-5 0:00:00Label3.Text = dt.DayOfWeek.ToString();//SaturdayLabel4.Text = dt.DayOfYear.ToString();//309Label5.Text = dt.Hour.ToString();//13Label6.Text = lisecond.ToString();//441Label7.Text = dt.Minute.ToString();//30Label8.Text = dt.Month.ToString();//11Label9.Text = dt.Second.ToString();//28Label10.Text = dt.Ticks.ToString();//632667942284412864Label11.Text = dt.TimeOfDay.ToString();//13:30:28.4412864Label1.Text = dt.ToString();//2005-11-5 13:47:04Label2.Text = dt.AddYears(1).ToString();//2006-11-5 13:47:04Label3.Text = dt.AddDays(1.1).ToString();//2005-11-6 16:11:04Label4.Text = dt.AddHours(1.1).ToString();//2005-11-5 14:53:04Label5.Text = dt.AddMilliseconds(1.1).ToString();//2005-11-5 13:47:04Label6.Text = dt.AddMonths(1).ToString();//2005-12-5 13:47:04Label7.Text = dt.AddSeconds(1.1).ToString();//2005-11-5 13:47:05Label8.Text = dt.AddMinutes(1.1).ToString();//2005-11-5 13:48:10Label9.Text = dt.AddTicks(1000).ToString();//2005-11-5 13:47:04Label10.Text = pareTo(dt).ToString();//0//Label11.Text = dt.Add(?).ToString();//问号为⼀个时间段Label1.Text = dt.Equals("2005-11-6 16:11:04").ToString();//FalseLabel2.Text = dt.Equals(dt).ToString();//TrueLabel3.Text = dt.GetHashCode().ToString();//1474088234Label4.Text = dt.GetType().ToString();//System.DateTimeLabel5.Text = dt.GetTypeCode().ToString();//DateTimeLabel1.Text = dt.GetDateTimeFormats('s')[0].ToString();//2005-11-05T14:06:25Label2.Text = dt.GetDateTimeFormats('t')[0].ToString();//14:06Label3.Text = dt.GetDateTimeFormats('y')[0].ToString();//2005年11⽉Label4.Text = dt.GetDateTimeFormats('D')[0].ToString();//2005年11⽉5⽇Label5.Text = dt.GetDateTimeFormats('D')[1].ToString();//2005 11 05Label6.Text = dt.GetDateTimeFormats('D')[2].ToString();//星期六 2005 11 05Label7.Text = dt.GetDateTimeFormats('D')[3].ToString();//星期六 2005年11⽉5⽇Label8.Text = dt.GetDateTimeFormats('M')[0].ToString();//11⽉5⽇Label9.Text = dt.GetDateTimeFormats('f')[0].ToString();//2005年11⽉5⽇ 14:06Label10.Text = dt.GetDateTimeFormats('g')[0].ToString();//2005-11-5 14:06Label11.Text = dt.GetDateTimeFormats('r')[0].ToString();//Sat, 05 Nov 2005 14:06:25 GMT Label1.Text =string.Format("{0:d}",dt);//2005-11-5Label2.Text =string.Format("{0:D}",dt);//2005年11⽉5⽇Label3.Text =string.Format("{0:f}",dt);//2005年11⽉5⽇ 14:23Label4.Text =string.Format("{0:F}",dt);//2005年11⽉5⽇ 14:23:23Label5.Text =string.Format("{0:g}",dt);//2005-11-5 14:23Label6.Text =string.Format("{0:G}",dt);//2005-11-5 14:23:23Label7.Text =string.Format("{0:M}",dt);//11⽉5⽇Label8.Text =string.Format("{0:R}",dt);//Sat, 05 Nov 2005 14:23:23 GMTLabel9.Text =string.Format("{0:s}",dt);//2005-11-05T14:23:23Label10.Text = string.Format("{0:t}",dt);//14:23Label11.Text = string.Format("{0:T}",dt);//14:23:23Label12.Text = string.Format("{0:u}",dt);//2005-11-05 14:23:23ZLabel13.Text = string.Format("{0:U}",dt);//2005年11⽉5⽇ 6:23:23Label14.Text = string.Format("{0:Y}",dt);//2005年11⽉Label15.Text = string.Format("{0}",dt);//2005-11-5 14:23:23?Label16.Text = string.Format("{0:yyyyMMddHHmmssffff}",dt); //yyyymm等可以设置,⽐如Label16.Text = string.Format("{0:yyyyMMdd}",dt);常⽤绑定⽇期格式化: <%# Eval("DateTime","{0:yyyy-MM-dd}")%>。
ASP.NET中GridView字段类型
![ASP.NET中GridView字段类型](https://img.taocdn.com/s3/m/3ecfeb9885868762caaedd3383c4bb4cf7ecb796.png)
中GridView字段类型今天我们主要看下GridView字段类型。
GridView字段类型主要有BoundField、HyperLinkField、CommandField、ImageField和TemplateField⼏种。
BoundField:表⽰数据绑定控件中作为⽂本显⽰的字段,可设置表头、样式等信息,其DataFormatString,可设置显⽰字段的格式。
例如{0:C}⽤来表⽰显⽰格式为货币类型。
0代表对应后⾯的第⼀个参数,这⾥就是绑定的字段所对应的值,冒号后⾯的符号,是格式化标记,它可以将数据显⽰为指定的格式化数据。
例如:我们对GridView的UnitPrice列设置DataFormatString属性输出结果如下图:HyperLinkField:显⽰为超链接的字段,⽐如链接到详细页⾯。
应⽤场景:⽐如我们从图书列表页⾯链接到某本图书详细信息页⾯,可以使⽤这种⽅式。
操作⽅法:⾸先通过下图添加HyperLinkField并且设置对应的属性。
通过这种⽅式页⾯会跳转到Default.aspx?id={0}这个页⾯,当然这⾥的{0}会被真实的ID值替换。
这样我们就可以将当前图书对应的ID传递到Default.aspx页⾯了。
在Default.aspx页⾯就可以通过Request.QueryString[“id”]获取id值,进⾏后续业务操作。
CommandField:⼀个特殊的字段,显⽰了⽤于在数据绑定控件中执⾏选择、编辑或删除操作的命令按钮。
⽽且这⾥我们需要注意⼀点,这⾥命令按钮中对应代码都是⾃动⽣成的,⽆须⼿写。
这⾥如果使⽤三层编写应⽤程序,则可以使⽤ObjectDataSource作为数据源,如果直接使⽤普通的开发⽅式,则可以使⽤SqlDataSource作为数据源。
注意:如果是编辑和删除操作,需要设置对应的操作语句才起作⽤。
ImageField字段:图像字段,绑定到包含图像URL的数据源中的字段。
GridView内容详解(1)
![GridView内容详解(1)](https://img.taocdn.com/s3/m/2dc4572e5b8102d276a20029bd64783e09127dee.png)
GridView内容详解(1)GridView是界面开发中的一个重要的控件,对GridView使用的熟练程度直接影响软件开发的进度及功能的实现。
GridView的主要新特性:1.与DataSource控件结合实现了显示与数据操作的分离,大大减化了代码的编写量;2.实现"双向绑定",无需手动检索数据。
2.在列的类型上新增了CheckBoxField和ImageField两个类型列;3.对排序和分页可以实现异步操作;4.对其视图状态进行优化,使其运行效率更高;GridView与DataSource控件要谈GridView就必需要谈DataSource,这两个对象可称得上是“最佳拍档”。
DataSource控件负责与数据源的交互,而GridView 负责数据的显示。
它们之间通过“双向绑定”联系起来,即DataSource控件将检索出来的数据绑定到GridView中显示,而GridView中修改和删除的数据直接绑定到DataSource数据源去。
这两个过程由这两个控件相互配合实现的,无需我们编写代码。
如果我们只用GridView显示数据,而不用DataSource控件的话,那你只好编写代码实现DataSource要作的工作了。
做为用过VS2003的用户对这个工作并不陌生,但这种代码实现不但工作量大,而且使用复杂,容量产生大量可读性差的代码,当然也是初学者的最大障碍。
好在VS2005为我们提供了DataSource控件,使我们不再如此痛苦地Coding了(当然,如果有的情况下DataSource控件还无法完全替代Coding)。
所以在使用GridView控件的时候我们最好配合DataSource控件使用,不要再去折磨自己了。
下面的案例不做特殊说明均以GridView+DataSource控件实现。
一、GridView外观设置:1、总体外观设置ShowFooter:(bool)是否显示页脚ShowHeader:(bool)是否显示页眉GridLines:(enum)None-不显示格线;Horizontal-显示水平格线;Virtical-显示竖直格线;Both-显示水平和竖直格线EmptyDataText:(string)如果数据源中内容为NULL时在GridView中显示的值AlternatingRowStyle:交替项的样式EditRowStyle:编辑项的样式EmptyDataRowStyle:空数据项的样式FooterStyle:页脚样式HeaderStyle:页眉样式PagerStyle:分页样式RowStyle:行样式SelectedRowStyle:选中项样式注:1、使用GridView的时候我们一般可以使用“自动套用样式”选中一个样式,然后在此样式的基础上修改上面的属性,从而制作出满意外观效果。
数据绑定之DataFormatString使用介绍
![数据绑定之DataFormatString使用介绍](https://img.taocdn.com/s3/m/c023ad0e6ad97f192279168884868762caaebb11.png)
数据绑定之DataFormatString使⽤介绍DataFormatString是很多控件都有的属性,如GridView等等,下⾯简单介绍⼀下这个属性。
DataFormatString="{0:格式字符串}"我们知道在DataFormatString 中的 {0}表⽰数据本⾝,⽽在冒号后⾯的格式字符串代表所们希望数据显⽰的格式;另外在指定的格式符号后可以指定⼩数所要显⽰的位数。
例如原来的数据为「1.56」,若格式设定为 {0:N1},则输出为「1.5」。
设定BoundField的DataFormatString,通常有以下⼏种DataFormatString= "{0:C}" 货币,货币的格式取决于当前Thread中Culture的设置DataFormatString= "{0:E}" 科学计数法DataFormatString= "{0: P}" 百分⽐DataFormatString= "{0:F?}" ⼩数点后⼏位DataFormatString= "{0:d}" M/d/yyyy 如 10/30/2008DataFormatString= "{0:f}" 长⽇期,短时间。
dddd,MMMM dd,yyyy HH:mm aa 如, Monday, January30, 2008 10:00am DataFormatString= "{0: D}" 长⽇期。
dddd,MMMM dd,yyyy 如: Monday,January 30,2008DataFormatString= "{0:F}" 长⽇期,长时间 dddd,MMMM dd,yyyy HH:mm:ss aaDataFormatString= "{0: s}" ISO 标准时间。
Gridview数据控件7种类型
![Gridview数据控件7种类型](https://img.taocdn.com/s3/m/748be30f844769eae009ed59.png)
(图9-7 BoundField属性分类l BoundField数据绑定字段属性列表w 若要指定在BoundField对象中显示的字段,可以设置DataField属性为数据字段的名称。
w 若要自定义字段字符串的格式,可以通过设置DataFormatString属性,后面会教各位如何自定义DataFormatString格式。
l BoundField行为属性w 显示字段值之前,将HtmlEncode属性设置为True(默认为True),可对此字段值进行HTML编码,这样可防止恶意的程序代码。
w 默认只有在数据绑定控件处于只读模式时,才可以将格式字符串套用至字段值。
若要在数据绑定控件处于编辑模式时将格式字符串套用至显示的值,请将ApplyFormatInEditMode属性设置为True。
w BoundField还可以针对null或空字符串进行处理,例如字段值若为null,则可通过设置NullDisplayText属性显示自定义标题,或将ConvertEmptyStringToNull属性设置为True,BoundField对象还可自动将空字符串("")字段值转换为null值。
不像在 1.1中若遇到null值数据绑定会产生异常错误而当掉,必须自行花费一番功夫来处理null值的数据防呆。
l BoundField样式属性w 通过ControlStyle可设置BoundField字段服务器子控件的样式。
w 通过FooterStyle可设置BoundField字段之页尾的样式。
w 通过HeaderStyle可设置BoundField字段之页首的样式。
w 通过ItemStyle可设置BoundField字段中数据项的样式。
范例9-3 使用BoundField数据绑定字段本范例将说明BoundField数据绑定字段的应用,例如直接将数据表字段拖曳到设计界面所产生的GridView的文本字段就是以BoundField 字段来呈现,请参考BoundField.aspx程序,以下为步骤说明。
DataGruid经典技巧及属性和方法介绍
![DataGruid经典技巧及属性和方法介绍](https://img.taocdn.com/s3/m/cafaec7d001ca300a6c30c22590102020740f28f.png)
DataGruid经典技巧及属性和方法介绍1.经典技巧当删除列在最后一列时,给删除前加上确认if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem){int t=e.Item.Cells.Count-1;LinkButton lbt=(LinkButton)(e.Item.Cells[t].Controls[0]);lbt.Attributes.Add("onclick","return confirm('删除后将无法恢复,是否继续?')"); }使某一行进入编辑状态dataGrid.EditItemIndex=(int)e.Item.ItemIndex;this.CreateData();//邦定数据到datagrid的函数取消编辑状态dataGrid.EditItemIndex=-1;this.CreateData();//邦定数据到datagrid的函数删除函数string id=BlockGrid.DataKeys[e.Item.ItemIndex].ToString();string sql=string.Format("delete from bbs_forum where forumid="+id);iBase=iAdapter.AdapteriDataBase();iBase.ExecuteNonSql(sql);Message.Show(this,"删除成功!");this.CreateData();//邦定数据到datagrid的函数更新函数string priority=((T extBox)e.Item.Cells[0].Controls[0]).Text.ToString();string id=BlockGrid.DataKeys[(int)(e.Item.ItemIndex)].ToString();string title=((TextBox)e.Item.Cells[1].Controls[0]).Text.ToString();string description=((TextBox)e.Item.Cells[2].Controls[0]).Text.ToString();string categoryid=((TextBox)e.Item.Cells[3].Controls[0]).Text.ToString();string onlymember=((TextBox)e.Item.Cells[4].Controls[0]).T ext.ToString();string admin=((TextBox)e.Item.Cells[5].Controls[0]).T ext.ToString();sql=string.Format("update bbs_forum setpriority={0},title='{1}',description='{2}',categoryid={3},onlymember={4},admin='{5}' where forumid={6}",priority,title,description,categoryid,onlymember,admin,id);iBase=iAdapter.AdapteriDataBase();try{iBase.ExecuteNonSql(sql);Message.Show(this,"更新成功");// Response.Write(sql);}catch{Message.Show(this,"更新失败,请确认填写信息格式否正确!");// Response.Write(sql);}BlockGrid.EditItemIndex=-1;this.BindDataGrid(MainBlockList.SelectedValue.ToString());分页dateGrid.CurrentPageIndex=e.NewPageIndex;this.CreateData();2属性和方法介绍一、方法1、DataBind很简单、最常用的方法。
Sql 中取小数点后面两位小数
![Sql 中取小数点后面两位小数](https://img.taocdn.com/s3/m/34d8f469168884868762d6d7.png)
Sql 中取小数点后面两位小数select convert(numeric(8,2),round(UnTaxAmount,2))as UnTaxAmount from View_SaleVoiceselect cast(UnTaxAmount as decimal(20,2)) as UnTaxAmount from View _SaleVoice Datagrid,DataList,Repeate等的数据格式设置表达式DataFormatString="{0:N0}%“DataFormatString="${0:N2}"DataFormatString="{0:N0}个"DataFormatString="No.{0:N0}"DataFormatString="{0:yyyy-MM-dd hh:mm:ss}"数据格式设置表达式.NET Framework 格式设置表达式,它在数据显示在列中之前先应用于数据。
此表达式由可选静态文本和用以下格式表示的格式说明符组成:{0:format specifier}0 是参数索引,它指示列中要格式化的数据元素;因此,通常用零来指示第一个(且唯一的)元素。
format specifier 前面有一个冒号(:),它由一个或多个字母组成,指示如何格式化数据。
可以使用的格式说明符取决于要格式化的数据类型:日期、数字或其他类型。
下表显示了不同数据类型的格式设置表达式的示例。
有关格式设置表达式的更多信息,请参见格式化类型。
格式设置表达式应用于此数据类型说明Price: {0:C} numeric/decimal 显示“Price:”,后跟以货币格式表示的数字。
货币格式取决于通过Page 指令或Web.config 文件中的区域性属性指定的区域性设置。
{0:D4} integer(不能和小数一起使用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
补充:
格式字符串 结果
{0:d} YY-MM-DD
{0:p} 百分比00.00%
{0:N2} 12.68
{0:N0} 13
{0:c2} $12.68
{0:d} 3/23/2003
{0:T} 12:00:00 AM
{0:男;;女}
格式字符串 资料 结果
"{0:C}" 12345.6789 -> $12,345.68
"{0:C}" -12345.6789 -> ($12,345.68)
"{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
s 使用本地时间的ISO8601可分类
t 短时间
T 长时间
u 使用通用时间的ISO8601可分类
U 通用可分类日期/时间
Y或y 年和月
3、数字的图片格式字符
0 没有有效值则显示0
# 数字占位符
. 小数点
, 分隔符
% 百分比
E+0,E-0,e+0或e-0 将输出格式为科学或指数含义
/ 转义字符
"或' 它们之间的任何字符都被解释为字符串
{和} 用于显示单文字性花括号,如"{{"显示为"{"
;分隔格式字符串中正、负和零值的两个或三个部分
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
{0:D}长日期;{0:d}短日期;{0:yy-MM-dd} 例如07-3-25;;{0:yyyy-MM-dd的数值格式字符串:
C或c 货币格式
D或d 十进制格式
E或e 科学(指数)格式
F或f 固定小数位格式
G或g 一般格式
N或n 数字格式
"{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
P或p 百分比格式
X或x 十六进制格式
2、常用的日期格式字符串:
d 短日期
D 长日期
f 完整(长日期和短时间)
F 完整(长日期和长时间)
g 一般(短日期和短时间)
G 一般(短日期和长时间)
M或m 月和日
R或r RFC1123格式
GridView中DataFormatString属性的取值DataFormatString 属性语法如下: DataFormatString="{0:格式字符串}"
我们知道在DataFormatString 中的 {0} 表示数据本身,而在冒号后面的格式字符串代表所们希望数据显示的格式;另外在指定的格式符号后可以指定小数所要显示的位数。例如原来的数据为「1.56」,若格式设定为 {0:N1},则输出为「1.5」。其常用的数值格式如下表所示:
"{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
"Total: {0:C}" 12345.6789 -> Total: $12345.68
{0:C} 货币;
{0:D4}由0填充的4个字符宽的字段中显示整数;
{0:000.0}四舍五入小数点保留第几位有效数字;
{0:N2}小数点保留2位有效数字;{0:N2}% 小数点保留2位有效数字加百分号;
t 精简时间格式 HH:mm
T 详细时间格式 HH:mm:ss
这里需要注意以下几点
1. 在GridView中的asp:BoundField使用DataFormatString必须设置属性HtmlEncode="False",否则不起作用。
2. 如果需要使用日期类型的格式化字符串,必须数据实体中对应的字段也应该日期类型的。
格式字符串 输入 结果
"{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
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
"{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