【问题标题】:How to change the time format in DateTime in RDLC?如何在 RDLC 中更改 DateTime 中的时间格式?
【发布时间】:2013-10-17 10:37:04
【问题描述】:

我有一个显示日期时间字段的 RDLC 报告。它以本地系统设置格式(比如 en-US)显示日期时间。

默认日期字符串如下,

10/08/2013 03:10.11 PM

我想根据输入参数动态地将时间格式更改为 24 小时,我仍然希望日期使用区域设置格式。

example if(parameter.value = true) 那么它应该显示10/08/2013 15:10.11 else

10/08/2013 03:10.11 PM

请帮我解决这个问题

【问题讨论】:

    标签: c# .net datetime ssrs-2008 rdlc


    【解决方案1】:

    您是否检查过 DateTime.ToString 是如何处理格式字符串的?阅读此article 看看是否有帮助。例如,如果您调用 datetime.ToString("g") ,则全球化会影响日期和时间的格式。当然,您可以明确告诉如何格式化日期时间,例如

    Dim d As New DateTime(2013, 10, 17, 14, 30, 0)
    Dim s As String = d.ToString("dd/MM/yyyy HH:mm:ss")
    Dim s2 As String = d.ToString("dd/MM/yyyy hh:mm:ss")
    

    但请记住,全球化仍然会影响日期、月份和年份之间的标记。

    【讨论】:

    • 我希望它作为日期时间而不是字符串
    • “10/08/2013 15:10.11”和“10/08/2013 03:10.11 PM”的日期时间对象完全相同,因此您需要将日期时间格式化为以某种方式显示在报告中。如何在报告中进行格式化,我不确定。您是否将日期时间绑定到某个标签或其他东西?有没有可能给出格式化字符串?
    • 是的,我们正在绑定报表中的字段。我们可以给出格式字符串,但它是静态的。我想在后面的代码中做它并在那里绑定它
    • 那你需要在数据绑定之前找到一个合适的事件,并根据条件在那里设置格式。
    猜你喜欢
    • 1970-01-01
    • 2021-05-26
    • 1970-01-01
    • 2021-10-02
    • 2010-12-23
    • 2013-09-21
    • 1970-01-01
    • 2020-12-25
    • 2013-07-22
    相关资源
    最近更新 更多