using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Syncfusion.XForms.Pickers; using Xamarin.Forms; using Xamarin.Forms.Xaml; namespace InABox.Mobile { public class TimeSelectorChangedArgs : EventArgs { public TimeSpan Time { get; private set; } public TimeSelectorChangedArgs(TimeSpan time) { Time = time; } } public delegate void TimeSelectorChanged(object sender, TimeSelectorChangedArgs args); [XamlCompilation(XamlCompilationOptions.Compile)] public partial class MobileTimeSelector { public event TimeSelectorChanged TimeChanged; public TimeSpan Time { get => Picker.Time; set => Picker.Time = value; } public MobileTimeSelector() { InitializeComponent(); } private void SfTimePicker_OnTimeSelected(object sender, TimeChangedEventArgs e) { TimeChanged?.Invoke(this, new TimeSelectorChangedArgs(Picker.Time)); } private void Clear_OnClicked(object sender, MobileButtonClickEventArgs args) { Picker.Time = TimeSpan.Zero; } private void Now_OnClicked(object sender, MobileButtonClickEventArgs args) { Picker.Time = DateTime.Now.TimeOfDay; } } }