private void CollectionView_SelectionChanged(object sender, SelectionChangedEventArgs e) { //EDIT ICON and MODe multiple if (this.collectionView.SelectionMode == SelectionMode.Multiple) { if (e.CurrentSelection.ToList().Count > 0) { Debug.WriteLine((this.collectionView.SelectedItem as Route).StartDestination); // Debug.WriteLine(ExtendedCollectionView.ExtendedFrameList //.Where(x => x.CurrentRoute.ID == (e.CurrentSelection.Last() as Route).ID).First().CurrentRoute.StartDestination); ExtendedFrame extendedFrame = ExtendedCollectionView.ExtendedFrameList .Where(x => x.CurrentRoute.ID == (e.CurrentSelection.Last() as Route).ID).First(); if (extendedFrame.BackgroundColor == Color.Red) { extendedFrame.BackgroundColor = Color.Yellow; } else { extendedFrame.BackgroundColor = Color.Red; } } } }
/// <summary> /// /// </summary> /// <param name="sender"></param> private async void ExtendedFrame_NormalPressed(object sender) { ExtendedFrame extendedFrame = sender as ExtendedFrame; if (extendedFrame.CurrentRoute != null) { await Navigation.PushAsync(new RouteDetailPage((sender as ExtendedFrame).CurrentRoute)); } }
protected override void OnElementChanged(ElementChangedEventArgs <Frame> e) { base.OnElementChanged(e); if (e.NewElement != null) { customFrame = e.NewElement as ExtendedFrame; SetupLayer(); } }
private void CreateListTextbox(int count) { _labels = new List <Label>(); _frames = new List <ExtendedFrame>(); for (int i = 0; i < count; i++) { ExtendedFrame frame = new ExtendedFrame() { BorderThickness = 1, CornerRadius = 15, BorderColor = BorderItemColor, HeightRequest = 50, WidthRequest = 50, HasShadow = false }; Label label = new Label() { TextColor = Color.Accent, VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalTextAlignment = TextAlignment.Center, HorizontalTextAlignment = TextAlignment.Center }; label.GestureRecognizers.Add(new TapGestureRecognizer() { Command = new Command(HandleAction), CommandParameter = label }); frame.Content = label; _labels.Add(label); _frames.Add(frame); flexLayout.Children.Add(frame); } }
private async void TapGestureRecognizer_Tapped_3(object sender, EventArgs e) { //Debug.WriteLine((sender as ExtendedFrame).CurrentRoute.StartDestination); if (this.collectionView.SelectionMode == SelectionMode.Multiple) { ExtendedFrame extendedFrame = ExtendedCollectionView.ExtendedFrameList .Where(x => x.CurrentRoute.ID == (sender as ExtendedFrame).CurrentRoute.ID).First(); if (extendedFrame.BackgroundColor == Color.FromHex("#808080")) { extendedFrame.BackgroundColor = Color.FromHex("#52597F"); TappedRoutes.Remove(extendedFrame.CurrentRoute); } else { extendedFrame.BackgroundColor = Color.FromHex("#808080"); TappedRoutes.Add(extendedFrame.CurrentRoute); } int countSelected = ExtendedCollectionView.ExtendedFrameList .Where(x => x.BackgroundColor == Color.FromHex("#808080")) .ToList() .Count; if (countSelected != 0) { this.title.Text = countSelected.ToString(); } else { this.title.Text = "Rotalar"; } } else { await Application.Current.MainPage.Navigation.PushAsync(new RouteDetailPage((sender as ExtendedFrame).CurrentRoute)); } }
public FrameDrawable(ExtendedFrame frame) { _frame = frame; frame.PropertyChanged += FrameOnPropertyChanged; }
void HandleLongClick(object sender, LongClickEventArgs e) { ExtendedFrame extendedFrame = ((ExtendedFrame)Element); extendedFrame.InvokeLongPressedEvent(extendedFrame); }
private void CustomFrameRenderer_Click(object sender, EventArgs e) { ExtendedFrame extendedFrame = ((ExtendedFrame)Element); extendedFrame.InvokeNormalPressedEvent(extendedFrame); }
public FrameDrawable(ExtendedFrame frame, Func <double, float> convertToPixels) { _frame = frame; _convertToPixels = convertToPixels; frame.PropertyChanged += FrameOnPropertyChanged; }