示例#1
0
 public void SwipeItemsExecuteThrowsExceptionWhenMoreThanOneItemAreAdded()
 {
     RunOnUIThread.Execute(() =>
     {
         var swipeItems  = new SwipeItems();
         swipeItems.Mode = SwipeMode.Execute;
         swipeItems.Add(new SwipeItem());
         Verify.Throws <ArgumentException>(() => { swipeItems.Add(new SwipeItem()); });
     });
 }
示例#2
0
 public void SwipeControlCanOnlyBeHorizontalOrVertical()
 {
     RunOnUIThread.Execute(() =>
     {
         SwipeControl swipeControl = new SwipeControl();
         swipeControl.LeftItems    = new SwipeItems();
         var topItems = new SwipeItems();
         topItems.Add(new SwipeItem());
         swipeControl.TopItems = topItems;
         Verify.Throws <ArgumentException>(() => { swipeControl.LeftItems.Add(new SwipeItem()); });
     });
 }
示例#3
0
        public void SwipeItemsTest()
        {
            SwipeItems swipeItems = null;

            RunOnUIThread.Execute(() =>
            {
                swipeItems = new SwipeItems();

                // verify the default value
                Verify.AreEqual(swipeItems.Mode, SwipeMode.Reveal);
                Verify.AreEqual(swipeItems.Count, 0);

                swipeItems.Add(new SwipeItem());
                swipeItems.Add(new SwipeItem());
            });

            IdleSynchronizer.Wait();

            RunOnUIThread.Execute(() =>
            {
                Verify.AreEqual(swipeItems.Count, 2);
            });
        }
示例#4
0
        public void TestSwipeItemsSwipeBehaviorOnInvoked()
        {
            var swipeView = new SwipeView();

            var swipeItem = new SwipeItem
            {
                BackgroundColor = Colors.Red,
                Text            = "Text"
            };

            var swipeItems = new SwipeItems
            {
                SwipeBehaviorOnInvoked = SwipeBehaviorOnInvoked.Close
            };

            swipeItems.Add(swipeItem);

            swipeView.LeftItems = swipeItems;

            Assert.AreEqual(SwipeBehaviorOnInvoked.Close, swipeView.LeftItems.SwipeBehaviorOnInvoked);
        }
示例#5
0
        public void TestSwipeItemsExecuteMode()
        {
            var swipeView = new SwipeView();

            var swipeItem = new SwipeItem
            {
                BackgroundColor = Colors.Red,
                Text            = "Text"
            };

            var swipeItems = new SwipeItems
            {
                Mode = SwipeMode.Execute
            };

            swipeItems.Add(swipeItem);

            swipeView.LeftItems = swipeItems;

            Assert.AreEqual(SwipeMode.Execute, swipeView.LeftItems.Mode);
        }
示例#6
0
        public void BtnAddItem_Click(object sender, RoutedEventArgs args)
        {
            SwipeItem swipeItem = new SwipeItem();

            swipeItem.Text = txtText.Text;
            switch (cmbIcon.SelectedIndex)
            {
            case (0):
                swipeItem.IconSource = Resources["SymbolIcon"] as IconSource;
                break;

            case (1):
                swipeItem.IconSource = Resources["FontIcon"] as IconSource;
                break;

            case (2):
                swipeItem.IconSource = Resources["BitmapIcon"] as IconSource;
                break;

            case (3):
                swipeItem.IconSource = Resources["PathIcon"] as IconSource;
                break;
            }
            swipeItem.Background = new SolidColorBrush(cpBackground.Color);
            switch (cmbBehaviorOnInvoked.SelectedIndex)
            {
            case (0):
                swipeItem.BehaviorOnInvoked = SwipeBehaviorOnInvoked.Auto;
                break;

            case (1):
                swipeItem.BehaviorOnInvoked = SwipeBehaviorOnInvoked.Close;
                break;

            case (2):
                swipeItem.BehaviorOnInvoked = SwipeBehaviorOnInvoked.RemainOpen;
                break;
            }
            SwipeItems swipeItems = null;

            switch (cmbCollection.SelectedIndex)
            {
            case (0):
                swipeItems = markupSwipeControl.LeftItems;
                if (swipeItems == null)
                {
                    swipeItems = new SwipeItems();
                    swipeItems.Add(swipeItem);
                    markupSwipeControl.LeftItems = swipeItems;
                }
                else
                {
                    swipeItems.Add(swipeItem);
                }
                break;

            case (1):
                swipeItems = markupSwipeControl.RightItems;
                if (swipeItems == null)
                {
                    swipeItems = new SwipeItems();
                    swipeItems.Add(swipeItem);
                    markupSwipeControl.RightItems = swipeItems;
                }
                else
                {
                    swipeItems.Add(swipeItem);
                }
                break;

            case (2):
                swipeItems = markupSwipeControl.TopItems;
                if (swipeItems == null)
                {
                    swipeItems = new SwipeItems();
                    swipeItems.Add(swipeItem);
                    markupSwipeControl.TopItems = swipeItems;
                }
                else
                {
                    swipeItems.Add(swipeItem);
                }
                break;

            case (3):
                swipeItems = markupSwipeControl.BottomItems;
                if (swipeItems == null)
                {
                    swipeItems = new SwipeItems();
                    swipeItems.Add(swipeItem);
                    markupSwipeControl.BottomItems = swipeItems;
                }
                else
                {
                    swipeItems.Add(swipeItem);
                }
                break;
            }
            switch (cmbMode.SelectedIndex)
            {
            case (0):
                swipeItems.Mode = SwipeMode.Reveal;
                break;

            case (1):
                swipeItems.Mode = SwipeMode.Execute;
                break;
            }
            resetSwipeItemChoices();
        }
示例#7
0
        public SecondIssue10679Page()
        {
            var layout = new Grid();

            var swipeView = new SwipeView();

            var leftItem = new SwipeItem
            {
                BackgroundColor = Color.Red
            };

            var leftItems = new SwipeItems
            {
                Mode = SwipeMode.Execute,
                SwipeBehaviorOnInvoked = SwipeBehaviorOnInvoked.Close
            };

            leftItems.Add(leftItem);

            var rightItem = new SwipeItem
            {
                BackgroundColor = Color.Green
            };

            var rightItems = new SwipeItems
            {
                Mode = SwipeMode.Execute,
                SwipeBehaviorOnInvoked = SwipeBehaviorOnInvoked.Close
            };

            rightItems.Add(rightItem);

            var content = new Grid
            {
                BackgroundColor = Color.White
            };

            var contentLabel = new Label
            {
                HorizontalOptions = LayoutOptions.Center,
                VerticalOptions   = LayoutOptions.Center,
                Text = "Swipe Left or Right"
            };

            content.Children.Add(contentLabel);

            swipeView.Content    = content;
            swipeView.LeftItems  = leftItems;
            swipeView.RightItems = rightItems;

            layout.Children.Add(swipeView);

            Content = layout;

            leftItem.Invoked += async(sender, args) =>
            {
                Shell.Current.Navigation.InsertPageBefore(new ThirdIssue10679Page(), this);
                _ = await Shell.Current.Navigation.PopAsync(false);
            };

            rightItem.Invoked += async(sender, args) =>
            {
                Shell.Current.Navigation.InsertPageBefore(new ThirdIssue10679Page(), this);
                _ = await Shell.Current.Navigation.PopAsync(false);
            };
        }
            static SwipeView LoadTemplate(OpportunityModel opportunityModel)
            {
                var beaconFundingImage = new Image
                {
                    Source        = "beaconfundingicon",
                    HeightRequest = _rowHeight
                };

                var topicTitleLabel = new Label
                {
                    Text                  = "Topic",
                    FontAttributes        = FontAttributes.Bold,
                    VerticalTextAlignment = TextAlignment.End
                };

                var topicDescriptionLabel = new Label
                {
                    VerticalTextAlignment = TextAlignment.Start,
                    Text = opportunityModel.Topic
                };

                var companyTitleLabel = new Label
                {
                    Text                  = "Company",
                    FontAttributes        = FontAttributes.Bold,
                    VerticalTextAlignment = TextAlignment.End
                };

                var companyDescriptionLabel = new Label
                {
                    VerticalTextAlignment = TextAlignment.Start,
                    Text = opportunityModel.Company
                };

                var leaseAmountTitleLabel = new Label
                {
                    Text                  = "Lease Amount",
                    FontAttributes        = FontAttributes.Bold,
                    VerticalTextAlignment = TextAlignment.End
                };

                var leaseAmountDescriptionLabel = new Label
                {
                    VerticalTextAlignment = TextAlignment.Start,
                    Text = opportunityModel.LeaseAmountAsCurrency
                };

                var ownerTitleLabel = new Label
                {
                    Text                  = "Owner",
                    FontAttributes        = FontAttributes.Bold,
                    VerticalTextAlignment = TextAlignment.End
                };

                var ownerDescriptionLabel = new Label
                {
                    VerticalTextAlignment = TextAlignment.Start,
                    Text = opportunityModel.Owner
                };

                var grid = new Grid
                {
                    BackgroundColor = Color.White,

                    Padding = new Thickness(5, 0, 0, 0),

                    ColumnSpacing  = 20,
                    RowDefinitions =
                    {
                        new RowDefinition {
                            Height = new GridLength(1, GridUnitType.Star)
                        },
                        new RowDefinition {
                            Height = new GridLength(1, GridUnitType.Star)
                        }
                    },
                    ColumnDefinitions =
                    {
                        new ColumnDefinition {
                            Width = new GridLength(_rowHeight / 3, GridUnitType.Absolute)
                        },
                        new ColumnDefinition {
                            Width = new GridLength(1, GridUnitType.Star)
                        }
                    }
                };

                grid.Children.Add(beaconFundingImage, 0, 0);
                Grid.SetRowSpan(beaconFundingImage, 2);

                grid.Children.Add(topicTitleLabel, 1, 0);
                grid.Children.Add(topicDescriptionLabel, 1, 1);

                if (Device.Idiom != TargetIdiom.Phone)
                {
                    grid.ColumnDefinitions.Add(new ColumnDefinition {
                        Width = new GridLength(1, GridUnitType.Star)
                    });
                    grid.ColumnDefinitions.Add(new ColumnDefinition {
                        Width = new GridLength(1, GridUnitType.Star)
                    });
                    grid.ColumnDefinitions.Add(new ColumnDefinition {
                        Width = new GridLength(1, GridUnitType.Star)
                    });


                    grid.Children.Add(companyTitleLabel, 2, 0);
                    grid.Children.Add(companyDescriptionLabel, 2, 1);

                    grid.Children.Add(leaseAmountTitleLabel, 3, 0);
                    grid.Children.Add(leaseAmountDescriptionLabel, 3, 1);

                    grid.Children.Add(ownerTitleLabel, 4, 0);
                    grid.Children.Add(ownerDescriptionLabel, 4, 1);
                }

                var deleteSwipeItem = new SwipeItem
                {
                    Text            = "Delete",
                    IconImageSource = "Delete",
                    BackgroundColor = Color.Red,
                    Command         = new AsyncCommand <string>(ExecuteSwipeToDeleteCommand)
                };

                deleteSwipeItem.SetBinding(SwipeItem.CommandParameterProperty, nameof(OpportunityModel.Topic));

                var rightSwipeItems = new SwipeItems
                {
                    Mode = SwipeMode.Execute
                };

                rightSwipeItems.Add(deleteSwipeItem);

                var swipeViewTappedCommand = new AsyncCommand <OpportunityModel>(ExecuteSwipeViewTappedCommand);

                var swipeView = new ExtendedSwipeView(swipeViewTappedCommand, opportunityModel)
                {
                    RightItems = rightSwipeItems,
                    Content    = grid,
                    Margin     = new Thickness(0, 5, 0, 15)
                };

                return(swipeView);
            }