【问题标题】:How do I store my Time the same way as my Date in my string?如何以与字符串中的日期相同的方式存储时间?
【发布时间】:2017-09-01 13:39:57
【问题描述】:

我尝试将用户输入的时间存储在一个字符串中,并在列表视图中获得正确的输出格式。现在,当用户进入时。时间像这样存储在列表视图中:“00:00:00”,我只想要小时和分钟,而不是秒。

当我使用我的日期时,一切正常,我存储了字符串,我可以在其他页面上找到它,并将它绑定到我的 xaml。

这是我的约会对象的样子,并且工作正常: App.ourDates(我的全局字符串),selectedDate(我的日期选择器 x:name)

App.ourDates = selectedDate.Date.ToString("ddd, d:e MMMM");

Navigation.PushAsync (new StartPage (App.ourDates));

还有信息获取的页面; XAML:

<Label Text = "{Binding ourSelectedDate, StringFormat='{0:d, d:e MM}'}" FontSize = "14" TextColor = "Black" 
AbsoluteLayout.LayoutBounds = "0.51, 0.2, 0.15 , 0.5"  AbsoluteLayout.LayoutFlags = "All"   />

所以我通过代码页上的公共类存储它。

它有效。当我使用相同的方法时,它似乎不起作用,这是我的代码: App.ourStartTime(我的全局字符串),selectTimeStart(我的时间选择器 x:name)。

App.ourStartTime =  selectTimeStart.Time.ToString ("t");
Navigation.PushAsync (new StartPage (App.ourStartTime));

XAML:

<Label Text = "{Binding ourSelectedTimeStart, StringFormat = '{0:H:e M}'}" Font = "14" TextColor = "#BE5869" YAlign = "Center" 
AbsoluteLayout.LayoutBounds = "0.72, 0.8, 0.4 , 0.5"  AbsoluteLayout.LayoutFlags = "All" />

所以它不起作用,我得到的第一个问题是 app.ourStartTime 出于某种奇怪的原因没有存储信息,然后当它被放入列表视图时,它显示如下“00:00:00” ,我希望它是 00:00。

【问题讨论】:

    标签: c# xamarin xamarin.forms


    【解决方案1】:

    我认为您还应该为时间转换指定一个格式

    App.ourStartTime = selectTimeStart.Time.ToString ("HH:mm");

    【讨论】:

    • 是否有可能 tgat 您的变量 selectTimeStart 不包含有效时间msdn.microsoft.com/en-us/library/zdtaw1bw(v=vs.110).aspx
    • 我什至无法进入我想要“创建”时间的页面。如果我使用此代码: selectTimeStart.Format = "HH:mm";当我按下它:: selectTimeStart.Time.ToString() 时,它就可以工作了。但我想把它储存起来,这样我就可以随时随地拿到它了
    • 您的属性日期和时间的类型是什么?你会为其中任何一个覆盖 ToString 吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-17
    • 2021-06-23
    • 2016-07-26
    • 1970-01-01
    • 2020-11-03
    • 1970-01-01
    相关资源
    最近更新 更多