Выбор элемента DatePicker в iOS
Этот элемент управления для платформы iOS определяется при выборе элементов в элементе DatePicker
управления, что позволяет пользователю указывать, что выбор элемента происходит при просмотре элементов в элементе управления или только после нажатия кнопки "Готово ". Он используется в XAML, задав DatePicker.UpdateMode
присоединенное свойство значение перечисления UpdateMode
:
<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>
Кроме того, его можно использовать из C# с помощью api fluent:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;
...
datePicker.On<iOS>().SetUpdateMode(UpdateMode.WhenFinished);
Метод DatePicker.On<iOS>
указывает, что эта платформа будет работать только в iOS. Метод DatePicker.SetUpdateMode
в Xamarin.Forms.PlatformConfiguration.iOSSpecific
пространстве имен используется для управления при выборе элемента, при UpdateMode
этом перечисление предоставляет два возможных значения:
Immediately
— выбор элемента происходит, так как пользователь просматривает элементы в элементеDatePicker
. Это поведение по умолчанию в Xamarin.Forms.WhenFinished
— выбор элемента происходит только после нажатия кнопки "Готово " в элементеDatePicker
.
Кроме того, SetUpdateMode
метод можно использовать для переключения значений перечисления путем вызова UpdateMode
метода, который возвращает текущий UpdateMode
:
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;
}
Результатом является применение указанного UpdateMode
элемента к DatePicker
элементу управления при выборе элемента: