获取或设置指定列中各项的显示格式的字符串。[Visual Basic]
Overridable Public Property DataFormatString As String
[C#]
public virtual string DataFormatString {get; set;}
[C++]
public: __property virtual String* get_DataFormatString();
public: __property virtual void set_DataFormatString(String*);
[JScript]
public function get DataFormatString() : String;
public function set DataFormatString(String);
属性值
指定列中各项的显示格式的格式化字符串。默认值为 String.Empty。备注
使用 DataFormatString 属性来提供列中各项的自定义格式。数据格式字符串由以冒号分隔的两部分组成,形式为 {A:Bxx}。例如,格式化字符串 {0:D2} 将单元格格式化为显示一个包含两个小数位数的数字。注意 整个字符串必须放在大括号内,表示它是格式字符串,而不是原义字符串。大括号外的任何文本均显示为原义文本。
冒号前的值(常规示例中为 A)指定在从零开始的参数列表中的参数索引。注意 此值只能设置为 0,因为每个单元格中只有一个值。
冒号后的字符(一般示例中为 B)指定值的显示格式。下表列出了一些常用格式。格式字符 说明
C 以货币格式显示数值。
D 以十进制格式显示数值。
E 以科学记数法(指数)格式显示数值。
F 以固定格式显示数值。
G 以常规格式显示数值。
N 以数字格式显示数值。
X 以十六进制格式显示数值。 注意 除 X 以指定的大小写形式显示十六进制字符之外,其他格式字符不区分大小写。
格式字符后的值(一般示例中为 xx)指定显示的值的有效位数或小数位数。有关格式化字符串的更多信息,请参阅格式设置概述。示例
[Visual Basic, C#, JScript] 下面的示例展示如何使用 DataFormatString 属性来为在 DataGrid 控件中显示价格的列指定货币格式。[Visual Basic]
<%@ Import Namespace="System.Data" %>
<html>
<script language="VB" runat="server">
Function CreateDataSource() As ICollection
Dim dt As New DataTable()
Dim dr As DataRow
dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
dt.Columns.Add(New DataColumn("StringValue", GetType(String)))
dt.Columns.Add(New DataColumn("CurrencyValue", GetType(Double)))
Dim i As Integer
For i = 0 To 8
dr = dt.NewRow()
dr(0) = i
dr(1) = "Item " + i.ToString()
dr(2) = 1.23 *(i + 1)
dt.Rows.Add(dr)
Next i
Dim dv As New DataView(dt)
Return dv
End Function 'CreateDataSource
Sub Page_Load(sender As Object, e As EventArgs)
If Not IsPostBack Then
' Load this data only once.
ItemsGrid.DataSource = CreateDataSource()
ItemsGrid.DataBind()
End If
End Sub 'Page_Load
</script>
<body>
<form runat=server>
<h3>BoundColumn Example</h3>
<b>Product List</b>
<asp:DataGrid id="ItemsGrid"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
AutoGenerateColumns="false"
runat="server"> <HeaderStyle BackColor="#00aaaa">
</HeaderStyle> <Columns> <asp:BoundColumn
HeaderText="Number"
DataField="IntegerValue">
</asp:BoundColumn> <asp:BoundColumn
HeaderText="Description"
DataField="StringValue">
</asp:BoundColumn> <asp:BoundColumn
HeaderText="Price"
DataField="CurrencyValue"
DataFormatString="{0:c}">
</asp:BoundColumn> </Columns>
</asp:DataGrid>
</form>
</body>
</html>
[C#]
<%@ Import Namespace="System.Data" %>
<html>
<script language="C#" runat="server">
ICollection CreateDataSource()
{
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
for (int i = 0; i < 9; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = 1.23 * (i + 1);
dt.Rows.Add(dr);
}
DataView dv = new DataView(dt);
return dv;
}
void Page_Load(Object sender, EventArgs e)
{
if (!IsPostBack)
{
// Load this data only once.
ItemsGrid.DataSource= CreateDataSource();
ItemsGrid.DataBind();
}
}
</script>
<body>
<form runat=server>
<h3>BoundColumn Example</h3>
<b>Product List</b>
<asp:DataGrid id="ItemsGrid"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
AutoGenerateColumns="false"
runat="server"> <HeaderStyle BackColor="#00aaaa">
</HeaderStyle> <Columns> <asp:BoundColumn
HeaderText="Number"
DataField="IntegerValue">
</asp:BoundColumn> <asp:BoundColumn
HeaderText="Description"
DataField="StringValue">
</asp:BoundColumn> <asp:BoundColumn
HeaderText="Price"
DataField="CurrencyValue"
DataFormatString="{0:c}">
</asp:BoundColumn> </Columns>
</asp:DataGrid>
</form>
</body>
</html>
[JScript]
<%@ Import Namespace="System.Data" %>
<html>
<script language="JScript" runat="server">
function CreateDataSource() : ICollection
{
var dt : DataTable = new DataTable();
var dr : DataRow;
dt.Columns.Add(new DataColumn("IntegerValue", GetType(Int32)));
dt.Columns.Add(new DataColumn("StringValue", GetType(String)));
dt.Columns.Add(new DataColumn("CurrencyValue", GetType(double)));
for (var i : int = 0; i < 9; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = 1.23 * (i + 1);
dt.Rows.Add(dr);
}
var dv : DataView = new DataView(dt);
return dv;
}
function Page_Load(sender : Object, e : EventArgs)
{
if (!IsPostBack)
{
// Load this data only once.
ItemsGrid.DataSource= CreateDataSource();
ItemsGrid.DataBind();
}
}
</script>
<body>
<form runat=server>
<h3>BoundColumn Example</h3>
<b>Product List</b>
<asp:DataGrid id="ItemsGrid"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
AutoGenerateColumns="false"
runat="server"> <HeaderStyle BackColor="#00aaaa">
</HeaderStyle> <Columns> <asp:BoundColumn
HeaderText="Number"
DataField="IntegerValue">
</asp:BoundColumn> <asp:BoundColumn
HeaderText="Description"
DataField="StringValue">
</asp:BoundColumn> <asp:BoundColumn
HeaderText="Price"
DataField="CurrencyValue"
DataFormatString="{0:c}">
</asp:BoundColumn> </Columns>
</asp:DataGrid>
</form>
</body>
</html>
[C++] 没有可用于 C++ 的示例。若要查看 Visual Basic、C# 或 JScript 示例,请单击页左上角的语言筛选器按钮 。
Overridable Public Property DataFormatString As String
[C#]
public virtual string DataFormatString {get; set;}
[C++]
public: __property virtual String* get_DataFormatString();
public: __property virtual void set_DataFormatString(String*);
[JScript]
public function get DataFormatString() : String;
public function set DataFormatString(String);
属性值
指定列中各项的显示格式的格式化字符串。默认值为 String.Empty。备注
使用 DataFormatString 属性来提供列中各项的自定义格式。数据格式字符串由以冒号分隔的两部分组成,形式为 {A:Bxx}。例如,格式化字符串 {0:D2} 将单元格格式化为显示一个包含两个小数位数的数字。注意 整个字符串必须放在大括号内,表示它是格式字符串,而不是原义字符串。大括号外的任何文本均显示为原义文本。
冒号前的值(常规示例中为 A)指定在从零开始的参数列表中的参数索引。注意 此值只能设置为 0,因为每个单元格中只有一个值。
冒号后的字符(一般示例中为 B)指定值的显示格式。下表列出了一些常用格式。格式字符 说明
C 以货币格式显示数值。
D 以十进制格式显示数值。
E 以科学记数法(指数)格式显示数值。
F 以固定格式显示数值。
G 以常规格式显示数值。
N 以数字格式显示数值。
X 以十六进制格式显示数值。 注意 除 X 以指定的大小写形式显示十六进制字符之外,其他格式字符不区分大小写。
格式字符后的值(一般示例中为 xx)指定显示的值的有效位数或小数位数。有关格式化字符串的更多信息,请参阅格式设置概述。示例
[Visual Basic, C#, JScript] 下面的示例展示如何使用 DataFormatString 属性来为在 DataGrid 控件中显示价格的列指定货币格式。[Visual Basic]
<%@ Import Namespace="System.Data" %>
<html>
<script language="VB" runat="server">
Function CreateDataSource() As ICollection
Dim dt As New DataTable()
Dim dr As DataRow
dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
dt.Columns.Add(New DataColumn("StringValue", GetType(String)))
dt.Columns.Add(New DataColumn("CurrencyValue", GetType(Double)))
Dim i As Integer
For i = 0 To 8
dr = dt.NewRow()
dr(0) = i
dr(1) = "Item " + i.ToString()
dr(2) = 1.23 *(i + 1)
dt.Rows.Add(dr)
Next i
Dim dv As New DataView(dt)
Return dv
End Function 'CreateDataSource
Sub Page_Load(sender As Object, e As EventArgs)
If Not IsPostBack Then
' Load this data only once.
ItemsGrid.DataSource = CreateDataSource()
ItemsGrid.DataBind()
End If
End Sub 'Page_Load
</script>
<body>
<form runat=server>
<h3>BoundColumn Example</h3>
<b>Product List</b>
<asp:DataGrid id="ItemsGrid"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
AutoGenerateColumns="false"
runat="server"> <HeaderStyle BackColor="#00aaaa">
</HeaderStyle> <Columns> <asp:BoundColumn
HeaderText="Number"
DataField="IntegerValue">
</asp:BoundColumn> <asp:BoundColumn
HeaderText="Description"
DataField="StringValue">
</asp:BoundColumn> <asp:BoundColumn
HeaderText="Price"
DataField="CurrencyValue"
DataFormatString="{0:c}">
</asp:BoundColumn> </Columns>
</asp:DataGrid>
</form>
</body>
</html>
[C#]
<%@ Import Namespace="System.Data" %>
<html>
<script language="C#" runat="server">
ICollection CreateDataSource()
{
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
for (int i = 0; i < 9; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = 1.23 * (i + 1);
dt.Rows.Add(dr);
}
DataView dv = new DataView(dt);
return dv;
}
void Page_Load(Object sender, EventArgs e)
{
if (!IsPostBack)
{
// Load this data only once.
ItemsGrid.DataSource= CreateDataSource();
ItemsGrid.DataBind();
}
}
</script>
<body>
<form runat=server>
<h3>BoundColumn Example</h3>
<b>Product List</b>
<asp:DataGrid id="ItemsGrid"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
AutoGenerateColumns="false"
runat="server"> <HeaderStyle BackColor="#00aaaa">
</HeaderStyle> <Columns> <asp:BoundColumn
HeaderText="Number"
DataField="IntegerValue">
</asp:BoundColumn> <asp:BoundColumn
HeaderText="Description"
DataField="StringValue">
</asp:BoundColumn> <asp:BoundColumn
HeaderText="Price"
DataField="CurrencyValue"
DataFormatString="{0:c}">
</asp:BoundColumn> </Columns>
</asp:DataGrid>
</form>
</body>
</html>
[JScript]
<%@ Import Namespace="System.Data" %>
<html>
<script language="JScript" runat="server">
function CreateDataSource() : ICollection
{
var dt : DataTable = new DataTable();
var dr : DataRow;
dt.Columns.Add(new DataColumn("IntegerValue", GetType(Int32)));
dt.Columns.Add(new DataColumn("StringValue", GetType(String)));
dt.Columns.Add(new DataColumn("CurrencyValue", GetType(double)));
for (var i : int = 0; i < 9; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = 1.23 * (i + 1);
dt.Rows.Add(dr);
}
var dv : DataView = new DataView(dt);
return dv;
}
function Page_Load(sender : Object, e : EventArgs)
{
if (!IsPostBack)
{
// Load this data only once.
ItemsGrid.DataSource= CreateDataSource();
ItemsGrid.DataBind();
}
}
</script>
<body>
<form runat=server>
<h3>BoundColumn Example</h3>
<b>Product List</b>
<asp:DataGrid id="ItemsGrid"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
AutoGenerateColumns="false"
runat="server"> <HeaderStyle BackColor="#00aaaa">
</HeaderStyle> <Columns> <asp:BoundColumn
HeaderText="Number"
DataField="IntegerValue">
</asp:BoundColumn> <asp:BoundColumn
HeaderText="Description"
DataField="StringValue">
</asp:BoundColumn> <asp:BoundColumn
HeaderText="Price"
DataField="CurrencyValue"
DataFormatString="{0:c}">
</asp:BoundColumn> </Columns>
</asp:DataGrid>
</form>
</body>
</html>
[C++] 没有可用于 C++ 的示例。若要查看 Visual Basic、C# 或 JScript 示例,请单击页左上角的语言筛选器按钮 。
d 短日期模式
D 长日期模式
t 短时间模式
T 长时间模式
d 短日期模式
D 长日期模式
t 短时间模式
T 长时间模式
f 完整日期/时间模式(短时间)
F 完整日期/时间模式(长时间)
g 常规日期/时间模式(短时间)
G 常规日期/时间模式(长时间)
M 或 m 月日模式
R 或 r RFC1123 模式
s 可排序的日期/时间模式;
u 通用的可排序日期/时间模式
U 通用的可排序日期/时间模式
Y 或 y 年月模式
任何其他单个字符 未知说明符