Пример #1
0
        public WalksPage()
        {
            var newWalkItem = new ToolbarItem
            {
                Text = "Add Walk"
            };

            // Set up our click event handler
            newWalkItem.Clicked += (sender, e) =>
            {
                Navigation.PushAsync(new WalkEntryPage());
            };

            // Add the ToolBar item to our ToolBar
            ToolbarItems.Add(newWalkItem);

            // Declare and initialise our Model Binding Context
            BindingContext = new WalksPageViewModel();

            // Define our Item Template
            var itemTemplate = new DataTemplate(typeof(ImageCell));

            itemTemplate.SetBinding(TextCell.TextProperty, "Title");
            itemTemplate.SetBinding(TextCell.DetailProperty, "Notes");
            itemTemplate.SetBinding(ImageCell.ImageSourceProperty, "ImageUrl");

            var walksList = new ListView
            {
                HasUnevenRows  = true,
                ItemTemplate   = itemTemplate,
                SeparatorColor = Color.FromHex("#ddd"),
            };

            // Set the Binding property for our walks Entries
            walksList.SetBinding(ItemsView <Cell> .ItemsSourceProperty, "walkEntries");

            // Initialise our event Handler to use when the item is tapped
            walksList.ItemTapped += (object sender, ItemTappedEventArgs e) =>
            {
                var item = (WalkEntries)e.Item;
                if (item == null)
                {
                    return;
                }
                Navigation.PushAsync(new WalkTrailPage(item));
                item = null;
            };

            Content = walksList;
        }
Пример #2
0
        public WalksPage()
        {
            var newWalkItem = new ToolbarItem
            {
                Text = "Dodaj szlak"
            };

            newWalkItem.SetBinding(ToolbarItem.CommandProperty, "CreateNewWalk");

            ToolbarItems.Add(newWalkItem);

            BindingContext = new WalksPageViewModel(DependencyService.Get <IWalkNavService>());
            //definicja szablonu elementu
            var itemTemplate = new DataTemplate(typeof(ImageCell));

            itemTemplate.SetBinding(TextCell.TextProperty, "Title");
            itemTemplate.SetBinding(TextCell.DetailProperty, "Notes");
            itemTemplate.SetBinding(ImageCell.ImageSourceProperty, "ImageUrl");

            var walksList = new ListView
            {
                HasUnevenRows  = true,
                ItemTemplate   = itemTemplate,
                SeparatorColor = Color.FromHex("#ddd")
            };

            //własność wiązania
            walksList.SetBinding(ItemsView <Cell> .ItemsSourceProperty, "walkEntries");

            //konfiguracja procedury obsługi zdarzeń
            walksList.ItemTapped += (object sender, ItemTappedEventArgs e) =>
            {
                var item = (WalkEntries)e.Item;
                if (item == null)
                {
                    return;
                }
                _viewModel.WalkTrailDetails.Execute(item);
                item = null;
            };

            //dodanie stworzonej zawartości do strony
            Content = walksList;
        }