gpt4 book ai didi

c# - 如何删除 00 :00:00 from DateTime property

转载 作者:太空宇宙 更新时间:2023-11-03 18:51:46 24 4
gpt4 key购买 nike

我有 ListViewDateTime 字段,它在 Label 上显示 00:00:00,但不是根本不需要。

public DateTime? StartDate
{
get { return _startDate; }
set
{
SetProperty(ref _startDate, value);
//StartDate = DateTime.ParseExact(StartDate.ToString(), "dd/MM/yyyy", CultureInfo.InvariantCulture); NOT WORKING
}
}

我尝试使用下面的行删除它但不起作用

StartDate = DateTime.ParseExact(StartDate.ToString(), "dd/MM/yyyy", CultureInfo.InvariantCulture); //NOT WORKING

显示它的代码

<StackLayout Orientation="Horizontal">
<Label HorizontalOptions="Center" VerticalOptions="Center" Text="{Binding StartDate}" />
<Label HorizontalOptions="Center" VerticalOptions="Center" Text="To" />
<Label HorizontalOptions="Center" VerticalOptions="Center" Text="{Binding EndDate}" />
</StackLayout>

列表单元格:

enter image description here

如何从日期中删除 0:

最佳答案

这不是 DateTime 在 C# 中的工作方式,让我举个例子:

// This will print '01.01.2000 00:00:00'
Console.WriteLine(DateTime.ParseExact("01/01/1970", "dd/MM/yyy", CultureInfor.InvariantCulture));

这是预料之中的,因为 DateTime 结构中的每个属性在构造函数之后都有一个值,00:00:00 只是默认值。您需要做的是使用 StringFormatformat specifier for DateTime 在显示它的位置(在您的标签中)对其进行格式化。 ,您可能想要的是 d。所以你的 xaml 应该是这样的:

<StackLayout Orientation="Horizontal">
<Label HorizontalOptions="Center" VerticalOptions="Center" Text="{Binding StartDate, StringFormat='{0:d}'}" />
<Label HorizontalOptions="Center" VerticalOptions="Center" Text="To" />
<Label HorizontalOptions="Center" VerticalOptions="Center" Text="{Binding EndDate, StringFormat='{0:d}'}" />
</StackLayout>

关于c# - 如何删除 00 :00:00 from DateTime property,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56489559/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com