public override Dialog OnCreateDialog(Bundle savedInstanceState) { var builder = new AlertDialog.Builder(Activity); var inflater = Activity.LayoutInflater; var selectedDate = GetSelectedDate(); var dialog = inflater.Inflate(Resource.Layout.date_picker_dialog, null); _monthPicker = (NumberPicker)dialog.FindViewById(Resource.Id.picker_month); _yearPicker = (NumberPicker)dialog.FindViewById(Resource.Id.picker_year); InitializeMonthPicker(selectedDate.Month); InitializeYearPicker(selectedDate.Year); SetMaxMinDate(MaxDate, MinDate); builder.SetView(dialog) .SetPositiveButton("Ok", (sender, e) => { selectedDate = new DateTime(_yearPicker.Value, _monthPicker.Value, DefaultDay); OnDateTimeChanged?.Invoke(dialog, selectedDate); }) .SetNegativeButton("Cancel", (sender, e) => { Dialog.Cancel(); OnClosed?.Invoke(dialog, selectedDate); }) .SetNeutralButton("Limpar", (sender, e) => { Dialog.Cancel(); OnClosed?.Invoke(dialog, selectedDate); }); return(builder.Create()); }
void NotifyDateChanged() { OnDateTimeChanged?.Invoke(this, new DateEventArgs(SelectedDate)); }
protected virtual void OnCalendarDaySelectedDoubleClick(object sender, EventArgs e) { OnDateTimeChanged?.Invoke(this, new DateEventArgs(SelectedDate)); Close(); }