将文本框值设为datetime

时间:2013-04-23 06:37:40

标签: windows-phone-7 datetime

也许这很简单。如果我有一个文本框,我想输入一个像“1300”这样的数字值,并让它显示像日期时间这样的“13:00”。

所以你应该看到的只是13:00,但它也是日期。

谁知道我的问题?

1 个答案:

答案 0 :(得分:1)

您可能需要使用Day or Time Picker。这是Windows Phone显示日期和时间的最常用方法。

另请查看Making a DateTimePicker
Windows Phone 7 - DatePicker and TimePicker

但如果您只想使用TextBox,则需要处理TextBox.LostFocus=OnLostFocus

    private void OnLostFocus(object sender, RoutedEventArgs e)
    {
        //here change text of TextBox however you want.
    }

<强> UPD

如果您想将当前时间设为TextBox作为默认值,则可以使用

  tb.Text = DateTime.Now.ToShortTimeString(); 

当您到达当前页面或TextBox.GotFocus=OnGotFocus

    private void OnGotFocus(object sender, RoutedEventArgs e)
    {
       tb.Text = DateTime.Now.ToShortTimeString(); 
    }

<强> UPD2

当您在TextBox中有价值时(例如1300),您需要解析它并获得newHours小时和newMinutes分钟。然后

 var today = DateTime.Now;
 var newDate = new DateTime(today.Year, today.Month, today.Day, newHours, newMinutes, 0);