| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- using System;
- using System.Collections;
- using System.Linq;
- using System.Windows.Input;
- using Xamarin.Forms;
- using Xamarin.Forms.Xaml;
- using XF.Material.Forms.UI.Dialogs;
- namespace InABox.Mobile
- {
- public class MobileListRefreshEventArgs : EventArgs
- {
- }
-
- public delegate void MobileListRefreshEvent(object sender, MobileListRefreshEventArgs args);
-
-
- // public class MobileListDataTemplateSelector : DataTemplateSelector
- // {
- //
- // protected override DataTemplate OnSelectTemplate(object item, BindableObject container) => new DataTemplate(typeof(DeliveryListEntry));
- // }
- [XamlCompilation(XamlCompilationOptions.Compile)]
- public partial class MobileList
- {
- public bool PullToRefresh
- {
- get;
- set;
- }
- // public int RowHeight
- // {
- // get => _viewmodel.RowHeight;
- // set => _viewmodel.RowHeight = value;
- // }
-
- public DataTemplate ItemTemplate
- {
- get => BindableLayout.GetItemTemplate(_list);
- set => BindableLayout.SetItemTemplate(_list,value);
- }
-
- public IEnumerable ItemsSource
- {
- get => BindableLayout.GetItemsSource(_list);
- set => BindableLayout.SetItemsSource(_list,value);
- }
-
- public event MobileListRefreshEvent Refresh;
- public MobileList()
- {
- InitializeComponent();
- _refresher.Command = new Command(DoRefresh, CanRefresh);
- }
-
- private bool CanRefresh(object sender) => PullToRefresh;
- private void DoRefresh(object sender)
- {
- if (_refresher != null)
- {
- _refresher.IsRefreshing = true;
- Refresh?.Invoke(sender, new MobileListRefreshEventArgs());
- _refresher.IsRefreshing = false;
- }
- }
-
- private void Cell_OnTapped(object sender, EventArgs e)
- {
- //if (sender is ViewCell viewcell)
- // ItemTapped?.Invoke(viewcell.BindingContext, new MobileListItemTappedEventArgs());
- }
- // private void _list_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
- // {
- // if (e.CurrentSelection.Any())
- // {
- // ItemTapped?.Invoke(e.CurrentSelection.First(), new MobileListItemTappedEventArgs());
- // //_list.SelectedItem = null;
- // }
- // else
- // {
- // }
- //
- // }
-
- }
- }
|