强制DateTime变量仅显示日期而不转换ToString()

Pio*_*nom 2 c# wpf datetime

我有一个对象属性DateTime Date.我试图把它作为一个DateTime对象,但只显示日期,即9/30/2013.我不想使用ToString()ToShortDateString().我尝试过使用Date.Date,但这仍然显示日期和时间.有没有办法查看DateTime未将其转换为字符串的日期?

我也读过这个问题.这个问题按我喜欢的方式措辞,但答案仍然使用了ToShortDateString().

这将显示在DataGrid绑定到我的对象的内容中.

Ree*_*sey 5

根据DateTime定义,A 将始终具有日期和时间的值.您可以将其转换为另一个DateTime代表日期部分(时间为午夜)的通道DateTime.Date.

但是,为了DateTime在控件中显示,它将始终转换为字符串.最好的选择通常是尝试控制转换中的转换方式DataGrid:

<DataGrid AutoGenerateColumns="False">
    <DataGrid.Columns>
        <DataGridTextColumn Binding="{Binding TheDate, StringFormat={}{0:MM/dd/yyyy}}" />
    </DataGrid.Columns>
</DataGrid>
Run Code Online (Sandbox Code Playgroud)

这将导致绑定到"TheDate"的列在显示时使用自定义字符串格式DateTime.