1using Microsoft.Maui.Controls;
8 private bool isSelectedBacking;
11 get => this.isSelectedBacking;
14 if (this.isSelectedBacking != value)
16 this.isSelectedBacking = value;
17 this.OnPropertyChanged();
18 this.OnIsSelectedChanged();
23 private void OnIsSelectedChanged()
26 this.IsSelectedChanged?.Invoke(
this, EventArgs.Empty);
29 public event EventHandler? IsSelectedChanged;
31 public Command ToggleSelectionCommand {
get; }
32 private readonly Action<SelectableOption<T>>? toggleAction;
37 this.isSelectedBacking = IsSelected;
38 this.toggleAction = ToggleAction;
39 this.ToggleSelectionCommand =
new Command(() => this.toggleAction?.Invoke(
this));