private void dateTimePickerTask_Completed(object sender, DateTimePickerTask.DateTimeResult e) { if (e.Error != null) { DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR), _callbackId); return; } switch (e.TaskResult) { case TaskResult.OK: try { var result = (long) e.Value.Value.ToUniversalTime().Subtract(new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalMilliseconds; if (!ResultHandlers.ContainsKey(CurrentCommandCallbackId)) { ResultHandlers.Add(CurrentCommandCallbackId, mySavedHandler); } DispatchCommandResult(new PluginResult(PluginResult.Status.OK, result.ToString()), _callbackId); } catch (Exception ex) { DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, "Datetime picker error. " + ex.Message), _callbackId); } break; case TaskResult.Cancel: DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, "Cancelled."), _callbackId); break; } _dateTimePickerTask = null; }
public void selectTime(string options) { try { if (ResultHandlers.ContainsKey(CurrentCommandCallbackId)) { mySavedHandler = ResultHandlers[CurrentCommandCallbackId]; } if (!GetDefaults(options)) return; _dateTimePickerTask = new DateTimePickerTask { Value = _dateTimePickerOptions.Value, Step = _dateTimePickerOptions.Step }; _dateTimePickerTask.Completed += dateTimePickerTask_Completed; _dateTimePickerTask.Show(DateTimePickerTask.DateTimePickerType.Time); } catch (Exception e) { DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, e.Message), _callbackId); } }