在UWP XAML的CalendarPicker中,当DateTime为空时显示占位符文本

mum43rcc  于 2022-12-07  发布在  其他
关注(0)|答案(1)|浏览(109)

我有一个CalendarDatePicker,它的Date属性绑定了一些DateTime对象。当绑定的Date为null时,选择器显示的是最少的可用日期(1/1/1922).当绑定的Date是null时,如何使选取器只显示PlaceHolderTextFuzzyDateConverter只是一个简单的转换器,它可以转换单个日期,将月份和年份转换为DateTime对象...
行事历选择器位于下方。

<CalendarDatePicker 
    PlaceholderText="Pick a date"
    HorizontalAlignment="Stretch"
    DateFormat="{}{day.integer}/{month.integer}/{year.full}"
    LightDismissOverlayMode="On"
    Date="{x:Bind ViewModel.CompletedAt, Converter={StaticResource FuzzyDateConverter}}"/>

转换器在下面...

public class FuzzyToDateTimeObject : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, string language)
    {
        return new DateTimeOffset(((DateTime)value).ToUniversalTime());
    }

    public object ConvertBack(object value, Type targetType, object parameter, string language)
    {
        return ((DateTimeOffset)value).DateTime;
    }
}
5kgi1eie

5kgi1eie1#

我试过你的代码,当CompletedAt为空时,它显示“Pick a date”占位符。
我的第一个猜测是您的FuzzyDateConverter没有返回空值,或者CompletedAt不是可空值。

相关问题