TimePicker
Interfejs użytkownika aplikacji wieloplatformowej platformy .NET (.NET MAUI) TimePicker wywołuje kontrolkę selektora czasu platformy i umożliwia wybranie czasu.
TimePicker definiuje następujące właściwości:
Time
typuTimeSpan
, wybrana godzina, która jest domyślnie ustawionaTimeSpan
na wartość 0. TypTimeSpan
wskazuje czas trwania od północy.Format
typustring
, standardowy lub niestandardowy ciąg formatowania .NET, który domyślnie to "t", wzorzec krótkiego czasu.TextColor
typu Color, kolor używany do wyświetlania wybranej godziny.FontAttributes
typuFontAttributes
, który domyślnie ma wartośćFontAtributes.None
.FontFamily
typustring
, który domyślnie ma wartośćnull
.FontSize
typudouble
, który domyślnie ma wartość -1.0.CharacterSpacing
, typudouble
, to odstęp między znakami TimePicker tekstu.
Wszystkie te właściwości są wspierane przez BindableProperty obiekty, co oznacza, że można je stylizować, a właściwości mogą być obiektami docelowymi powiązań danych. Właściwość Time
ma domyślny tryb BindingMode.TwoWay
powiązania , co oznacza, że może być elementem docelowym powiązania danych w aplikacji używającej wzorca Model-View-ViewModel (MVVM).
Uwaga
Element TimePicker nie zawiera zdarzenia wskazującego nową wybraną Time
wartość. Jeśli musisz otrzymywać powiadomienia o tym, możesz dodać program obsługi zdarzeń dla PropertyChanged
zdarzenia.
Ponadto TimePicker definiuje TimeSelected zdarzenie, które jest wywoływane po zmianie wybranego czasu. Obiekt TimeChangedEventArgs , który towarzyszy TimeSelected
zdarzeniu, ma NewTime
właściwości i OldTime
, które określają odpowiednio nowy i stary czas.
Tworzenie platformy TimePicker
Time
Gdy właściwość jest określona w języku XAML, wartość jest konwertowana na TimeSpan
wartość i zweryfikowana, aby upewnić się, że liczba milisekund jest większa lub równa 0, a liczba godzin jest mniejsza niż 24. Składniki czasu powinny być oddzielone dwukropkami:
<TimePicker Time="4:15:26" />
BindingContext
Jeśli właściwość TimePicker właściwości jest ustawiona na wystąpienie modelu viewmodel zawierającego właściwość typu TimeSpan
o nazwie SelectedTime
(na przykład), możesz utworzyć wystąpienie podobne do następującegoTimePicker:
<TimePicker Time="{Binding SelectedTime}" />
W tym przykładzie Time
właściwość jest inicjowana do SelectedTime
właściwości w modelu viewmodel. Time
Ponieważ właściwość ma tryb TwoWay
powiązania , każdy nowy czas, który użytkownik wybierze, jest automatycznie propagowany do modelu widoku.
W kodzie można zainicjować Time
właściwość na wartość typu TimeSpan
:
TimePicker timePicker = new TimePicker
{
Time = new TimeSpan(4, 15, 26) // Time set to "04:15:26"
};
Aby uzyskać informacje o ustawianiu właściwości czcionki, zobacz Czcionki.
TimePicker i układ
Można użyć nieskonsekwowanej opcji układu poziomego, takiej jak Center
, Start
, lub End
z TimePicker:
<TimePicker ···
HorizontalOptions="Center" />
Nie jest to jednak zalecane. W zależności od ustawienia Format
właściwości wybrane godziny mogą wymagać różnych szerokości wyświetlania. Na przykład ciąg formatu "T" powoduje TimePicker , że widok wyświetla czasy w długim formacie, a "4:15:26 AM" wymaga większej szerokości wyświetlania niż krótki format czasu ("t") "4:15 AM". W zależności od platformy ta różnica może spowodować TimePicker zmianę szerokości widoku w układzie lub obcięcie ekranu.
Napiwek
Najlepiej użyć domyślnego HorizontalOptions
Fill
ustawienia z wartością TimePicker, a nie używać szerokości Auto
podczas umieszczania TimePicker w komórce Grid .
Różnice między platformami
W tej sekcji opisano różnice specyficzne dla platformy w kontrolce TimePicker .
W systemie Android Format
właściwość jest szanowana i wyświetlana przez kontrolkę. Jednak gdy kontrolka selektora jest wyświetlana przez naciśnięcie kontrolki, można zmienić tylko godzinę, minutę i godzinę dnia.