簡體   English   中英

如果時間為00:00,如何在Listview的Datetime中隱藏時間

[英]How to hide time from Datetime on Listview if time is 00:00

簡單的情況。 我有一個ItemsSource="{Binding MyModelsList}"的列表視圖。 MyModelsList是MyModel元素的列表:

public MyViewModel() {
    ...
    _myModelsList = // method that gets items from db
}

private ObservableCollection<MyModel> _myModelsList;
public ObservableCollection<MyModel> MyModelsList
{
    // get.. set..
}

...,而MyModel包含一些名為MyDate的Datetime字段。 當我以默認方式聲明MyDate時...

<ListView ItemsSource="{Binding MyModelsList}">
    <...>
        <Label Content="{Binding MyDate}" />   
    </...>
</ListView>

...達到以下結果:

  • 當時間是00: 9.23.2018 > 9.23.2018
  • 當時間不同時-> 9.23.2018 11:00 AM

我想實現相同的目標,但還沒有完成。 XAML中可能嗎? 我嘗試了不同的ContentStringFormat但始終結果包含00:00。

我知道在ViewModel中分別聲明MyDate字段時該怎么辦,但是在ViewModel中只有MyList聲明並將其綁定到Listview時該怎么辦?

你有沒有嘗試過

Content="{Binding MyDate, StringFormat=T}". 

您可以參考此文檔頁面以獲取DateTime的StringFormat的所有可能值。

如果您仍想隱藏00:00時的時間,可以使用這樣的觸發器

                <Label>
                    <Label.Style>
                        <Style TargetType="{x:Type Label}">
                            <Setter Property="Content" Value="{Binding MyDate, StringFormat=T}"/>
                            <Style.Triggers>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding MyDate.Hour}" Value="0" />
                                        <Condition Binding="{Binding MyDate.Minute}" Value="0" />
                                        <Condition Binding="{Binding MyDate.Second}" Value="0" />
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Content" Value=""/>
                                </MultiDataTrigger>
                            </Style.Triggers>

                        </Style>
                    </Label.Style>
                </Label>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM