DatePicker-Elementauswahl unter iOS
Diese iOS-plattformspezifischen Steuerelemente, wenn die Elementauswahl in einem DatePicker
erfolgt, sodass der Benutzer angeben kann, dass die Elementauswahl beim Durchsuchen von Elementen im Steuerelement oder erst dann erfolgt, wenn die Schaltfläche Fertig gedrückt wird. Sie wird in XAML verwendet, indem die DatePicker.UpdateMode
angefügte Eigenschaft auf einen Wert der UpdateMode
Enumeration festgelegt wird:
<ContentPage ...
xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core">
<StackLayout>
<DatePicker MinimumDate="01/01/2020"
MaximumDate="12/31/2020"
ios:DatePicker.UpdateMode="WhenFinished" />
...
</StackLayout>
</ContentPage>
Alternativ kann es über C# mithilfe der Fluent-API verwendet werden:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;
...
datePicker.On<iOS>().SetUpdateMode(UpdateMode.WhenFinished);
Die DatePicker.On<iOS>
-Methode gibt an, dass diese plattformspezifische Nur unter iOS ausgeführt wird. Die DatePicker.SetUpdateMode
-Methode im Xamarin.Forms.PlatformConfiguration.iOSSpecific
-Namespace wird verwendet, um zu steuern, wann die Elementauswahl erfolgt, wobei die UpdateMode
Enumeration zwei mögliche Werte bereitstellt:
Immediately
– Die Elementauswahl tritt auf, wenn der Benutzer Elemente imDatePicker
durchsucht. Dies ist das Standardverhalten in Xamarin.Forms.WhenFinished
– Die Elementauswahl erfolgt nur, nachdem der Benutzer die Schaltfläche Fertig imDatePicker
gedrückt hat.
Darüber hinaus kann die SetUpdateMode
-Methode verwendet werden, um die Enumerationswerte durch Aufrufen der UpdateMode
-Methode umzuschalten, die den aktuellen UpdateMode
zurückgibt:
switch (datePicker.On<iOS>().UpdateMode())
{
case UpdateMode.Immediately:
datePicker.On<iOS>().SetUpdateMode(UpdateMode.WhenFinished);
break;
case UpdateMode.WhenFinished:
datePicker.On<iOS>().SetUpdateMode(UpdateMode.Immediately);
break;
}
Das Ergebnis ist, dass ein angegebenes UpdateMode
auf das DatePicker
angewendet wird, wodurch gesteuert wird, wann die Elementauswahl erfolgt: