/// <summary> Gets date prompt configuration. </summary> /// <exception cref="ArgumentNullException"> Thrown when one or more required arguments are null. </exception> /// <param name="config"> The configuration. </param> /// <returns> The date prompt configuration. </returns> private AcrDialogs.DatePromptConfig GetDatePromptConfig(UserDialogDatePromptConfig config) { if (config == null) { throw new ArgumentNullException(nameof(config)); } var result = new AcrDialogs.DatePromptConfig(); if (config.Title != null) { result.Title = config.Title; } if (config.OkText != null) { result.OkText = config.OkText; } if (config.CancelText != null) { result.CancelText = config.CancelText; } if (config.SelectedDate != null) { result.SelectedDate = config.SelectedDate; } if (config.UnspecifiedDateTimeKindReplacement != null) { result.UnspecifiedDateTimeKindReplacement = config.UnspecifiedDateTimeKindReplacement.Value; } if (config.OnAction != null) { result.OnAction = GetDatePromptResultAction(config.OnAction); } if (config.IsCancellable != null) { result.IsCancellable = config.IsCancellable.Value; } if (config.MinimumDate != null) { result.MinimumDate = config.MinimumDate; } if (config.MaximumDate != null) { result.MaximumDate = config.MaximumDate; } if (config.AndroidStyleId != null) { result.AndroidStyleId = config.AndroidStyleId; } return(result); }
/// <summary> Date prompt asynchronous. </summary> /// <param name="config"> The configuration. </param> /// <param name="cancelToken"> (Optional) The cancel token. </param> /// <returns> The asynchronous result that yields an UserDialogDatePromptResult. </returns> public async Task <UserDialogDatePromptResult> DatePromptAsync(UserDialogDatePromptConfig config, CancellationToken?cancelToken = null) { AcrDialogs.DatePromptResult result = await AcrDialogs.UserDialogs.Instance.DatePromptAsync(GetDatePromptConfig(config), cancelToken); return(ConvertDatePromptResult(result)); }
/// <summary> Date prompt. </summary> /// <param name="config"> The configuration. </param> /// <returns> An IDisposable. </returns> public IDisposable DatePrompt(UserDialogDatePromptConfig config) { return(AcrDialogs.UserDialogs.Instance.DatePrompt(GetDatePromptConfig(config))); }