123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using Xamarin.Forms;
- namespace PRS.Mobile
- {
-
- public class ExpanderViewItem
- {
- public String Description { get; set; }
- public bool Selected { get; set; }
- }
-
- public class ExpanderViewGroup
- {
-
- public String Description { get; set; }
-
- public ImageSource Image { get; set; }
- private List<ExpanderViewItem> _items = new List<ExpanderViewItem>();
- public ExpanderViewItem[] Items => _items.ToArray();
- public ExpanderViewGroup AddItem(ExpanderViewItem item)
- {
- _items.Add(item);
- return this;
- }
- public void DeleteItem(ExpanderViewItem item)
- {
- if (_items.Contains(item))
- _items.Remove(item);
- }
- public void Clear() => _items.Clear();
- }
-
-
- public class ExpanderViewData
- {
- private List<ExpanderViewGroup> _groups = new List<ExpanderViewGroup>();
- public ExpanderViewGroup[] Groups => _groups.ToArray();
- public ExpanderViewGroup AddGroup(ExpanderViewGroup group)
- {
- _groups.Add(group);
- return group;
- }
-
- public void DeleteGroup(ExpanderViewGroup group)
- {
- if (_groups.Contains(group))
- _groups.Remove(group);
- }
- public void Clear() => _groups.Clear();
- public ExpanderViewItem[] SelectedItems
- {
- get
- {
- List<ExpanderViewItem> results = new List<ExpanderViewItem>();
- foreach (var group in Groups)
- results.AddRange(group.Items.Where(x => x.Selected));
- return results.ToArray();
- }
- }
- }
- }
|