#c# #visual-studio #xamarin #xamarin.forms
#c# #visual-studio #xamarin #xamarin.forms
Вопрос:
Я пытаюсь получить правильный формат для моих DatePicker и TimePicker в формах Xamarin.
Мне нужно получить правильную дату и время в следующем формате:
05.12.2020 04:12:34 вечера
Но я продолжаю получать его в этом формате:
5.12.2020 12:00:00 AM 17:31:23.2153540
Я хочу иметь возможность выбирать дату и время для установленной даты и отображать их в правильном формате.
Вот мой код:
В моем файле xaml:
<DatePicker x:Name="dueDatePicker" Date="{x:Static sys:DateTime.Today}" Format="MMM dd yyyy" MinimumDate="{x:Static sys:DateTime.Today}" HorizontalOptions="EndAndExpand" />
<TimePicker x:Name="dueTimePicker" HorizontalOptions="End" />
В моем файле xaml cs я использую этот код, но он отображается в
неправильном формате:
dueDatePicker.Date.ToString() " " dueTimePicker.Time.ToString();
Спасибо.
Комментарии:
1. если вы просто используете
ToString
без указания формата, он будет использовать стандартный формат для вашей локали. См. learn.microsoft.com/en-us/dotnet/standard/base-types /…
Ответ №1:
Если вы хотите показать формат : 12/5/2020 04:12:34 PM
, вам нужно сначала добавить Format
for TimePicker
.
<DatePicker x:Name="dueDatePicker"
Date="{x:Static sys:DateTime.Today}"
Format="MMM dd yyyy"
MinimumDate="{x:Static sys:DateTime.Today}"
HorizontalOptions="EndAndExpand" />
<TimePicker x:Name="dueTimePicker"
Format="HH:mm:ss"
HorizontalOptions="End" />
Затем TimePicker
будет показан формат из Xaml
, однако DatePicker
необходимость использования другого формата покажет желаемый эффект.
Код следующим образом:
if(dueTimePicker.Time.Hours > 12)
{
Console.WriteLine("time is : " dueDatePicker.Date.ToString("MM/d/yyyy") dueTimePicker.Time.ToString() " PM ");
}
else
{
Console.WriteLine("time is : " dueDatePicker.Date.ToString("MM/d/yyyy") dueTimePicker.Time.ToString() " AM ");
}
Вывод на консоль:
09-29 13:51:41.771 I / mono-stdout(11803): время: 29.09.2020 05:00:00
УТРА 09-29 13:51:59.149 I / mono-stdout(11803): время: 29.09.2020 17:00:00 вечера