Sdílet prostřednictvím


TimePicker

Uživatelské rozhraní .NET Multi-Platform App UI (.NET MAUI) TimePicker vyvolá ovládací prvek pro výběr času platformy a umožňuje vybrat čas.

TimePicker definuje následující vlastnosti:

  • Time typu TimeSpan, vybraný čas, který je výchozí hodnotou TimeSpan 0. Typ TimeSpan označuje dobu trvání od půlnoci.
  • Format typ string, standardní nebo vlastní formátovací řetězec .NET, který ve výchozím nastavení "t", krátký časový vzor.
  • TextColor typu Color, barva použitá k zobrazení vybraného času.
  • FontAttributes typu FontAttributes, který má výchozí hodnotu FontAtributes.None.
  • FontFamily typu string, který má výchozí hodnotu null.
  • FontSizedoubletypu , který má výchozí hodnotu -1.0.
  • CharacterSpacing, typu double, je mezery mezi znaky TimePicker textu.

Všechny tyto vlastnosti jsou podporovány BindableProperty objekty, což znamená, že je možné je stylovat a vlastnosti mohou být cílem datových vazeb. Vlastnost Time má výchozí režim vazby BindingMode.TwoWay, což znamená, že může být cílem datové vazby v aplikaci, která používá model-View-ViewModel (MVVM).

Poznámka:

Neobsahuje TimePicker událost, která označuje novou vybranou Time hodnotu. Pokud potřebujete být upozorněni na tuto událost, můžete pro událost přidat obslužnou rutinu PropertyChanged události.

Kromě toho TimePicker definuje TimeSelected událost, která se vyvolá při změně vybraného času. Objekt TimeChangedEventArgs , který doprovází TimeSelected událost, má NewTime a OldTime vlastnosti, které určují nový a starý čas, v uvedeném pořadí.

Vytvoření TimePickeru

Time Pokud je vlastnost zadána v XAML, hodnota je převedena na TimeSpan a ověřena, aby se zajistilo, že počet milisekund je větší nebo roven 0 a že počet hodin je menší než 24. Časové komponenty by měly být oddělené dvojtečkami:

<TimePicker Time="4:15:26" />

BindingContext Pokud je vlastnost TimePicker nastavena na instanci modelu viewmodel obsahující vlastnost typu TimeSpan s názvem SelectedTime (například), můžete vytvořit instanci TimePicker podobné tomuto:

<TimePicker Time="{Binding SelectedTime}" />

V tomto příkladu Time je vlastnost inicializována na SelectedTime vlastnost v modelu viewmodel. Vzhledem k tomu, že Time vlastnost má režim TwoWayvazby , kdykoliv nový čas, který uživatel vybere, se automaticky rozšíří do modelu viewmodel.

V kódu můžete inicializovat Time vlastnost na hodnotu typu TimeSpan:

TimePicker timePicker = new TimePicker
{
  Time = new TimeSpan(4, 15, 26) // Time set to "04:15:26"
};

Informace o nastavení vlastností písma naleznete v tématu Písma.

TimePicker a rozložení

Je možné použít nekontrénovanou vodorovnou možnost rozložení, jako Centerje , Startnebo End s TimePicker:

<TimePicker ···
            HorizontalOptions="Center" />

Nedoporučuje se to ale. V závislosti na nastavení Format vlastnosti můžou vybrané časy vyžadovat různé šířky zobrazení. Například řetězec formátu "T" způsobí TimePicker , že zobrazení bude zobrazovat časy v dlouhém formátu a "4:15:26", vyžaduje větší šířku zobrazení než krátký formát času ("t") z "4:15 AM". V závislosti na platformě může tento rozdíl způsobit TimePicker , že zobrazení změní šířku rozložení nebo se zobrazení zkrátí.

Tip

Nejlepší je použít výchozí HorizontalOptions nastavení Fill s TimePicker, a ne použít šířku Auto při vkládání TimePicker do Grid buňky.

Rozdíly mezi platformami

Tato část popisuje rozdíly specifické pro platformu s ovládacím TimePicker prvek.

V Androidu Format se vlastnost respektuje a zobrazuje ovládacím prvku. Pokud se ale ovládací prvek pro výběr zobrazí stisknutím ovládacího prvku, můžete změnit pouze hodinu, minutu a denní dobu.