WinPhone 8.1 TimeSpan格式输出

时间:2014-10-01 13:25:12

标签: c# xaml windows-phone-8.1

我有这个ComleteLocation方法就像一个结帐功能。

它有效,但我似乎无法格式化输出。我不能在XAML中这样做,因为不支持stringformat。

我希望输出通过XAML绑定屏幕显示为(“HH:mm”),因为我需要知道我在该客户工作了多长时间。

public async void CompleteLocation(Log log)
{
    int index = _Log.IndexOf(log);
    _Log[index].CheckOut = DateTime.Now;
    TimeSpan LoggedTime = log.CheckOut - log.CheckIn;

    log.LoggedTime = LoggedTime;
    log.NotifyPropertyChanged("CheckOut");
    log.NotifyPropertyChanged("LoggedTime");
    await saveLogDataAsync();

}

1 个答案:

答案 0 :(得分:2)

使用你自己的StringConverter ......归结为:

return String.Format((string)parameter, value);

并使用像这样的

<TextBlock Text="{Binding LoggedTime, 
                  Converter={StaticResource StringFormatConverter}, 
                  ConverterParameter='{}{0:HH:mm}'}" />

Blog post by Marco Minerva.