AM / PM在Excel导出中显示为tt

时间:2017-07-19 14:09:20

标签: datetime radgrid date-formatting

我的RadGrid中有一个GridDateTimeColumn。我正在使用自定义方法导出到Excel。当我导出日期时导出为“2/2/2017 1:38:34 tt”。而不是显示AM或PM,它只是在最后说tt。

createdColumn.DataFormatString = "MM/dd/yyyy h:mm:ss tt";

3 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。然后我将列的数字格式(显示日期)更改为“文本”。这解决了我的问题。

ASPX

<telerik:GridDateTimeColumn HeaderText="Create Date" HeaderStyle-Width="13%" 
    ItemStyle-HorizontalAlign="Left" HeaderStyle-HorizontalAlign="Left" SortExpression="CreateDateDesc" DataField="CreateDate" DataType="System.String" DataFormatString="{0:MM/dd/yyyy hh:mm tt}" ></telerik:GridDateTimeColumn>

C#

protected void radGrdOrderHistory_InfrastructureExporting(object sender, Telerik.Web.UI.GridInfrastructureExportingEventArgs e)
{
 Telerik.Web.UI.ExportInfrastructure.Table tbl = e.ExportStructure.Tables[0];
 foreach (Telerik.Web.UI.ExportInfrastructure.Cell cell in tbl.Columns[9].Cells)
  {
     cell.Format = "@";
  }
}

答案 1 :(得分:0)

我认为将“ tt”更改为“ AM / PM”就足够了。我在使用EPPlus时遇到了同样的问题,导致我here下图所示:

Custom time formatting examples

它在不更改列类型的情况下解决了我的问题。

答案 2 :(得分:0)

我有同样的问题。

我进行了以下更改以修复此问题。这将tt替换为AM/PM

createdColumn.DataFormatString.Replace("tt","AM/PM")

希望这会有所帮助。