Esempio n. 1
0
        public static void UpdateSelection(this RecyclerView recyclerView, SelectableItemsView selectableItemsView)
        {
            var mode = selectableItemsView.SelectionMode;

            var adapter = (recyclerView.GetAdapter() as SelectableItemsViewAdapter <SelectableItemsView, IItemsViewSource>);

            adapter?.ClearPlatformSelection();

            switch (mode)
            {
            case SelectionMode.None:
                return;

            case SelectionMode.Single:
                var selectedItem = selectableItemsView.SelectedItem;
                adapter.MarkPlatformSelection(selectedItem);
                return;

            case SelectionMode.Multiple:
                var selectedItems = selectableItemsView.SelectedItems;

                foreach (var item in selectedItems)
                {
                    adapter.MarkPlatformSelection(item);
                }
                return;
            }
        }
Esempio n. 2
0
        protected override void SetUpNewElement(ItemsView newElement)
        {
            base.SetUpNewElement(newElement);

            _selectableItemsView = newElement as SelectableItemsView;

            if (_selectableItemsView != null)
            {
                _selectableItemsView.SelectionChanged += OnSelectionChanged;
            }

            var newListViewBase = ListViewBase;

            if (newListViewBase != null)
            {
                newListViewBase.SetBinding(ListViewBase.SelectionModeProperty,
                                           new Windows.UI.Xaml.Data.Binding
                {
                    Source    = _selectableItemsView,
                    Path      = new Windows.UI.Xaml.PropertyPath("SelectionMode"),
                    Converter = new SelectionModeConvert(),
                    Mode      = Windows.UI.Xaml.Data.BindingMode.TwoWay
                });

                newListViewBase.SelectionChanged += OnNativeSelectionChanged;
            }

            UpdateNativeSelection();
        }
Esempio n. 3
0
        public static void UpdateSelection(this RecyclerView recyclerView, SelectableItemsView selectableItemsView)
        {
            var mode = selectableItemsView.SelectionMode;
            //TODO: on NET7 implement a ISelectableItemsViewAdapter interface on the adapter
            var adapter = recyclerView.GetAdapter() as ReorderableItemsViewAdapter <ReorderableItemsView, IGroupableItemsViewSource>;

            adapter?.ClearPlatformSelection();

            switch (mode)
            {
            case SelectionMode.None:
                return;

            case SelectionMode.Single:
                var selectedItem = selectableItemsView.SelectedItem;
                adapter.MarkPlatformSelection(selectedItem);
                return;

            case SelectionMode.Multiple:
                var selectedItems = selectableItemsView.SelectedItems;

                foreach (var item in selectedItems)
                {
                    adapter.MarkPlatformSelection(item);
                }
                return;
            }
        }
Esempio n. 4
0
 private async void OnItemSelected(object sender, SelectableItemsView e)
 {
     if (ListDatos.SelectedItem != null)
     {
         var detailPage = new Medicamentos();
         detailPage.BindingContext = e.SelectedItem as Product;
         ListDatos.SelectedItem    = null;
         await Navigation.PushModalAsync(detailPage);
     }
 }
Esempio n. 5
0
 public async void EliminarRegistro(object sender, SelectableItemsView args)
 {
     if (consulta.SelectedIndex == 0 || consulta.SelectedIndex == -1)
     {
         var item = args.SelectedItem as Resultado4Temp;
         await Application.Current.MainPage.DisplayAlert("Mensaje de Error", "Estas seguro que quieres eliminar " + item.player1 + "vs" + item.player2, "OK");
     }
     else if (consulta.SelectedIndex == 1)
     {
         var item = args.SelectedItem as Resultados;
         await Application.Current.MainPage.DisplayAlert("Mensaje de Error", "Estas seguro que quieres eliminar " + item.player1 + "vs" + item.player2, "OK");
     }
 }
        protected override void OnElementChanged(ElementChangedEventArgs <CollectionView> args)
        {
            var oldListViewBase = ListViewBase;

            if (oldListViewBase != null)
            {
                oldListViewBase.ClearValue(ListViewBase.SelectionModeProperty);
                oldListViewBase.SelectionChanged -= OnNativeSelectionChanged;
            }

            if (args.OldElement != null)
            {
                args.OldElement.SelectionChanged -= OnSelectionChanged;
            }

            base.OnElementChanged(args);
            _selectableItemsView = args.NewElement;

            if (_selectableItemsView != null)
            {
                _selectableItemsView.SelectionChanged += OnSelectionChanged;
            }

            var newListViewBase = ListViewBase;

            if (newListViewBase != null)
            {
                newListViewBase.SetBinding(ListViewBase.SelectionModeProperty,
                                           new Windows.UI.Xaml.Data.Binding
                {
                    Source    = _selectableItemsView,
                    Path      = new Windows.UI.Xaml.PropertyPath("SelectionMode"),
                    Converter = new SelectionModeConvert(),
                    Mode      = Windows.UI.Xaml.Data.BindingMode.TwoWay
                });

                newListViewBase.SelectionChanged += OnNativeSelectionChanged;
            }
            UpdateNativeSelection();
        }
Esempio n. 7
0
 internal SelectableItemsViewAdapter(SelectableItemsView selectableItemsView,
                                     Func <IVisualElementRenderer, Context, global::Android.Views.View> createView = null) : base(selectableItemsView, createView)
 {
     SelectableItemsView = selectableItemsView;
 }
Esempio n. 8
0
 internal SelectableItemsViewAdapter(SelectableItemsView selectableItemsView,
                                     Func <View, Context, ItemContentView> createView = null) : base(selectableItemsView, createView)
 {
     SelectableItemsView = selectableItemsView;
 }
Esempio n. 9
0
 public SelectableItemsViewController(SelectableItemsView selectableItemsView, ItemsViewLayout layout)
     : base(selectableItemsView, layout)
 {
 }
 public static void MapSelectionMode(SelectableItemsViewHandler <TItemsView> handler, SelectableItemsView itemsView)
 {
 }
Esempio n. 11
0
 public static void MapSelectedItem(SelectableItemsViewHandler <TItemsView> handler, SelectableItemsView itemsView)
 {
     if (itemsView.SelectionMode != SelectionMode.None && itemsView.SelectedItem != null)
     {
         var index = handler.PlatformView.Adaptor.GetItemIndex(itemsView.SelectedItem);
         handler.PlatformView.SelectedItemIndex = index;
     }
 }
Esempio n. 12
0
 public static void MapSelectionMode(SelectableItemsViewHandler <TItemsView> handler, SelectableItemsView itemsView)
 {
     handler.PlatformView.SelectionMode = itemsView.SelectionMode.ToPlatform();
 }
Esempio n. 13
0
 public static void MapSelectionMode(SelectableItemsViewHandler <TItemsView> handler, SelectableItemsView itemsView)
 {
     (handler.Controller as SelectableItemsViewController <TItemsView>)?.UpdateSelectionMode();
 }
Esempio n. 14
0
        public static void MapItemsSource(SelectableItemsViewHandler <TItemsView> handler, SelectableItemsView itemsView)
        {
            ItemsViewHandler <TItemsView> .MapItemsSource(handler, itemsView);

            MapSelectedItem(handler, itemsView);
        }
Esempio n. 15
0
 public SelectableItemsViewController(SelectableItemsView selectableItemsView, ItemsViewLayout layout)
     : base(selectableItemsView, layout)
 {
     SelectableItemsView = selectableItemsView;
     Delegator.SelectableItemsViewController = this;
 }
 public static void MapSelectedItems(SelectableItemsViewHandler <TItemsView> handler, SelectableItemsView itemsView)
 {
     (handler.Controller as SelectableItemsViewController <TItemsView>)?.UpdatePlatformSelection();
 }