Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从c更改GridView中列的格式#_C#_Datetime_Gridview_Format - Fatal编程技术网

C# 如何从c更改GridView中列的格式#

C# 如何从c更改GridView中列的格式#,c#,datetime,gridview,format,C#,Datetime,Gridview,Format,我有一个GridView,我想将它导出到Word。我想将一列的格式更改为datetime格式(“dd.MM.yyyy”) 在*.aspx页面中,这非常简单,如下例所示: <asp:boundfield datafield="My_Date_Column" dataformatstring="{0:dd.MM.yyyy}" htmlencode="false" /> 我想从c#更改格式,如何做到这一点?我认为列的格式

我有一个GridView,我想将它导出到Word。我想将一列的格式更改为datetime格式(“dd.MM.yyyy”)

在*.aspx页面中,这非常简单,如下例所示:

<asp:boundfield datafield="My_Date_Column"
                dataformatstring="{0:dd.MM.yyyy}"
                htmlencode="false" />


我想从c#更改格式,如何做到这一点?

我认为列的格式基于系统当前的日期时间格式

String.Format("{0:dd.MM.yyyy}", myDateTimeInstance);
但当转换为字符串时,您可以这样做

String str = dt[RowNumber][ColumnName].ToString("dd.MM.yyyy");

我认为列的格式是基于系统当前的日期时间格式

但当转换为字符串时,您可以这样做

String str = dt[RowNumber][ColumnName].ToString("dd.MM.yyyy");

可能的格式如中所示


如果要从CodeBehind更改GridView列的格式,可能的格式显示在中。

RowDataBound
添加到网格视图中

然后在
GridView\u RowDataBound(object sender,GridViewRowEventArgs e)
方法中,您将能够访问
e
,该方法将为您提供对该行各个单元格的访问,您可以在其中指定格式化程序

下面是一个使用
RowDataBound
事件的示例

如果要从CodeBehind更改GridView列的格式 将
RowDataBound
添加到网格视图中

然后在
GridView\u RowDataBound(object sender,GridViewRowEventArgs e)
方法中,您将能够访问
e
,该方法将为您提供对该行各个单元格的访问,您可以在其中指定格式化程序

下面是一个使用
RowDataBound
事件的示例

如果您想格式化整个列,那么最好为相关列设置属性

gridview1.Columns[columnIndex].DataFormatString=“{0:dd.MM.yyyy}”


我认为您需要将列强制转换为
BoundField
,才能访问属性。

如果您想格式化整个列,那么最好为相关列设置属性

gridview1.Columns[columnIndex].DataFormatString=“{0:dd.MM.yyyy}”


我认为您需要将该列强制转换为
BoundField
,才能访问该属性。

这很简单。如果datetime绑定在网格中,他将如何从代码中访问该datetime。@EoinCampbell:将网格源代码转换为Datatable。并使用类似于
dt[0][“columnname”].ToString(“dd.MM.yyyy”)这是最简单的一点。如果datetime绑定在网格中,他将如何从代码中访问该datetime。@EoinCampbell:将网格源代码转换为Datatable。并使用类似于
dt[0][“columnname”].ToString(“dd.MM.yyyy”)DateTime dt = DateTime.Now;
String formated = dt.ToString("dd.MM.yyyy");
String formated = String.Format("{0:dd.MM.yyyy}", dt );
DateTime dt = DateTime.Now;
string formated = dt.ToString("dd.MM.yyyy");