【问题标题】:ASPxDateEdit: How can I show only the date component of a DateTime (ie, hide the time component)?ASPxDateEdit:如何仅显示 DateTime 的日期组件(即隐藏时间组件)?
【发布时间】:2012-07-09 13:53:18
【问题描述】:

我正在使用 ASPxDateEdit 控件来编辑日期字段。这个特定字段的时间部分永远不会相关,所以我想隐藏它,以便只有日期部分可见。我尝试了以下方法:

<dx:ASPxDateEdit ID="dpExpirationDate" EditFormat="Date" runat="server" />

<dx:ASPxDateEdit ID="dpExpirationDate" EditFormat="Custom" EditFormatString="M/d/yyyy" runat="server" />

<dx:ASPxDateEdit ID="dpExpirationDate" EditFormat="Custom" EditFormatString="{0:M/d/yyyy}" runat="server" />

我是这样设置的:

dpExpirationDate.Value = Entity.ExpirationDate

无论我尝试什么,它仍然显示 7/9/2012 12:00:00 AM。如何隐藏时间组件?

另外,有代表的人可以添加ASPxDateEdit 作为标签。

更新:我发现了这个问题,这很奇怪,但是人们对 DevExpress 控件有什么期望呢?

我发现在代码隐藏中将 ASPxDateEdit 的 Visible 属性设置为 True 或 False 将导致它显示时间组件,无论您为其 EditFormat 属性设置什么。此外,推入日期字符串也会产生相同的效果,因此不要尝试将 DateTime.Now.ToString() 分配给其 Value 属性,否则您会遇到相同的结果。

【问题讨论】:

  • 我在多个页面中使用了您的代码的第一个版本,一切都按预期工作。我在我的页面中进行了事件测试,但我没有看到日期时间的时间部分。
  • 我在一个测试应用程序中尝试过它,它在那里工作,所以我的主应用程序发生了一些有趣的事情。我将不得不把所有东西都拆开,然后回到你身边,届时我会让你重新发布你的答案,这样我就可以标记它,因为你已经付出了这么多努力。
  • Filip,我找到了问题并在我的问题中发布了更新。如果您想验证我的结果,请随意。转发你的答案,我会标记它。

标签: asp.net datetime datepicker devexpress


【解决方案1】:

您的第一个变体适用于我的环境。因此,将EditFormat 属性值设置为日期。
EditFormat enumeration values.
至于切换可见属性,我无法重现此问题。但是,VisibleClientVisible 属性之间有一个重要区别。如果将 Visible 设置为 false,则不会呈现控件。因此,您无法在客户端对其进行操作。如果您希望控件呈现隐藏,则必须使用 ClientVisible 属性。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-18
    • 2014-03-30
    • 2011-06-12
    • 2019-12-30
    • 1970-01-01
    • 2010-12-01
    • 2022-01-06
    相关资源
    最近更新 更多