public SearchList() { Search.Placeholder = "Name..."; Search.TextChanged += Search_TextChanged; BindingContext = this; ResultsList.SetBinding <SearchList>(ListView.ItemsSourceProperty, x => x.Results); ResultsList.ItemSelected += (sender, args) => ItemSelectedCommand.Execute(args.SelectedItem); _httpClient.BaseAddress = UriSource; ResultsList.ItemTemplate = new DataTemplate(() => { var viewCell = new ViewCell(); var name = new Label { Margin = new Thickness(15, 0), LineBreakMode = LineBreakMode.TailTruncation }; name.SetBinding <SearchListSelectItem>(Label.TextProperty, x => x.Name); viewCell.View = name; return(viewCell); }); Content = new StackLayout { Children = { Search, ResultsList } }; }
public HkLiskView() { InitializeComponent(); imgSortBy.Text = sortDescendingPath; imgSortBy.IsVisible = false; //gridHeader.IsVisible = false; txtSearchBar.IsVisible = false; // this delegate invoked when listview details item is tapped OnListViewItemSelected = (object args) => { if (ItemSelectedCommand != null) { if (ItemSelectedCommand.CanExecute(args)) { ItemSelectedCommand.Execute(args); } } }; //// this delegate invoked when grouped listview header is tapped OnStemmonsListViewGroupHeaderTapped = (object args) => { if (GroupHeaderCommand.CanExecute(args)) { GroupHeaderCommand.Execute(args); } }; }
private void OnItemTapped(object sender, ItemTappedEventArgs e) { if (e.Item != null && ItemSelectedCommand != null && ItemSelectedCommand.CanExecute(e.Item)) { ItemSelectedCommand.Execute(e.Item); } SelectedItem = null; }
private void ListView_ItemSelected(object sender, SelectedItemChangedEventArgs e) { ListView.SelectedItem = null; if (ItemSelectedCommand != null && ItemSelectedCommand.CanExecute(e.SelectedItem)) { ItemSelectedCommand.Execute(e.SelectedItem); } ItemSelected?.Invoke(this, e.SelectedItem); Close_Tapped(this, null); }
private void OnItemSelected(object sender, SelectedItemChangedEventArgs e) { var item = e.SelectedItem; if (item != null && ItemSelectedCommand != null && ItemSelectedCommand.CanExecute(item)) { ItemSelectedCommand.Execute(e.SelectedItem); } SelectedItem = null; }
private void Repopulate() { Children.Clear(); if (ItemsSource == null) { return; } // build our own internal command so that we can respond to selected events // correctly even if the command was set after the items were rendered var selectedCommand = new Command <object>(o => { if (ItemSelectedCommand != null && ItemSelectedCommand.CanExecute(o)) { ItemSelectedCommand.Execute(o); } }); View child; foreach (var item in ItemsSource) { if (ItemTemplate != null) { child = ItemTemplate.CreateContent() as View; if (child == null) { continue; } child.BindingContext = item; } else if (!string.IsNullOrEmpty(DisplayMember)) { child = new Label { BindingContext = item, TextColor = TextColor, HeightRequest = ItemHeightRequest }; child.SetBinding(Label.TextProperty, DisplayMember); } else { child = new Label { Text = item.ToString(), TextColor = TextColor, HeightRequest = ItemHeightRequest }; } // add an internal tapped handler var itemTapped = new TapGestureRecognizer { Command = selectedCommand, CommandParameter = item }; child.GestureRecognizers.Add(itemTapped); Children.Add(child); } }
private void InfiniteListView_ItemSelected(object sender, SelectedItemChangedEventArgs e) { if (e.SelectedItem == null) { // Ignore item deselected events return; } if (ItemSelectedCommand != null && ItemSelectedCommand.CanExecute(null)) { ItemSelectedCommand.Execute(e.SelectedItem); } }
private void Handle_ItemTapped(object sender, ItemTappedEventArgs e) { if (sender == null) { return; } Tapped?.Invoke(this, e); if (ItemSelectedCommand != null && ItemSelectedCommand.CanExecute(e.Item)) { ItemSelectedCommand?.Execute(e.Item); } }
private void ExtendedListView_ItemSelected(object sender, SelectedItemChangedEventArgs e) { try { var param = ItemSelectedCommandParameter ?? e.SelectedItem; if (ItemSelectedCommand != null && ItemSelectedCommand.CanExecute(param)) { ItemSelectedCommand.Execute(param); } } catch (Exception ex) { Debug.WriteLine(ex.Message); } }
protected override void OnSelectionChanged(SelectionChangedEventArgs e) { if ((SelectedItem != null) && (ItemSelectedCommand != null) && ItemSelectedCommand.CanExecute(ItemSelectedCommandParameter)) { try { ItemSelectedCommand.Execute(ItemSelectedCommandParameter); } catch (Exception ex) { MessageBox.Show(ex.Message); } } base.OnSelectionChanged(e); }
private void ListViewItemSelected(object sender, SelectedItemChangedEventArgs e) { if (e.SelectedItem != null) { if (Device.RuntimePlatform == Device.UWP) { // To fix UWP Xamarin Forms crash issue when opening some of case items lstStemmons.ItemsSource = null; lstStemmons.ItemsSource = ItemsSource; } ItemSelectedCommand?.Execute(e.SelectedItem); ((ListView)sender).SelectedItem = null; } lstStemmons.SelectedItem = null; }
private async void MessageCenterSubmitAsync(RecorderViewModel arg1, PredictionData data) { Device.BeginInvokeOnMainThread(async() => { if (data == null) { await Application.Current.MainPage.DisplayAlert("Error", "No data returned. Please record your command again or contact support", "Cancel", "ok"); } if (data.ClassId.Trim() == "Back or Go back" && data.Probability > 70.0) { await Application.Current.MainPage.Navigation.PopAsync(); } else if (data.ClassId.Trim() == "item 1 or 1" && data.Probability > 70.0) { ItemSelectedCommand.Execute(Products[0]); } else if (data.ClassId.Trim() == "Item 2 or 2" && data.Probability > 70.0) { ItemSelectedCommand.Execute(Products[1]); } else if (data.ClassId.Trim() == "Item 3 or 3" && data.Probability > 70.0) { ItemSelectedCommand.Execute(Products[2]); } else if (data.ClassId.Trim() == "Item 4 or 4" && data.Probability > 70.0) { ItemSelectedCommand.Execute(Products[3]); } else if (data.ClassId.Trim() == "Item 5 or 5" && data.Probability > 70.0) { ItemSelectedCommand.Execute(Products[4]); } else if (data.ClassId.Trim() == "Open Cart" && data.Probability > 70.0) { CardItemCommand.Execute(null); } else { await Application.Current.MainPage.DisplayAlert("Error", "Please record your command again. Recording is not clear enough", "Cancel", "ok"); } }); }
private void XListView_ItemSelected(object sender, SelectedItemChangedEventArgs e) { var listView = sender as ListView; if (listView != null) { if (ItemSelectedCommand != null) { if (listView.SelectedItem != null) { ItemSelectedCommand.Execute(listView.SelectedItem); if (ResetSelection) { listView.SelectedItem = null; } } } } }
public override void SubscribeModel() { model.DayTableModels.ObserveAddChanged() .Subscribe(x => { MainGroupListViewModel sameTitleViewModel = DayTableViewModels.FirstOrDefault(y => y.Title == x.Station); if (sameTitleViewModel != null) { sameTitleViewModel.Add(new DayTableViewModel(x)); } else { DayTableViewModels.Add(new MainGroupListViewModel(x.Station) { new DayTableViewModel(x) }); } }) .AddTo(Disposables); model.DayTableModels.ObserveResetChanged() .Subscribe(x => DayTableViewModels.Clear()) .AddTo(Disposables); model.ObserveProperty(x => x.IsLoading) .Subscribe(x => isLoading.Value = x) .AddTo(Disposables); Observable.FromEventPattern <ErrorEventArgs>(h => model.ErrorOccurred += h, h => model.ErrorOccurred -= h) .Select(x => x.EventArgs) .Subscribe(x => ShowAlertCommand.Execute(x.Message)) .AddTo(Disposables); LoadCommand.Subscribe(async _ => await model.LoadAsync()) .AddTo(Disposables); LoadIfEmptyCommand.Subscribe(async _ => await model.LoadIfEmptyAsync()) .AddTo(Disposables); ItemSelectedCommand.Subscribe(x => PushDayTableViewCommand.Execute(x.Clone())) .AddTo(Disposables); ItemAppearingCommand.Subscribe(x => x.SubscribeModel()) .AddTo(Disposables); ItemDisappearingCommand.Subscribe(x => x.UnSubscribeModel()) .AddTo(Disposables); }
void OnEvent(object sender, object eventArgs) { if (Command == null && ItemSelectedCommand == null) { return; } object resolvedParameter; if (CommandParameter != null) { resolvedParameter = CommandParameter; } else if (Converter != null) { resolvedParameter = Converter.Convert(eventArgs, typeof(object), null, null); } else { resolvedParameter = eventArgs; } if (ItemSelectedCommand != null) { var e = (SelectedItemChangedEventArgs)eventArgs; if (e.SelectedItem != null) { if (ItemSelectedCommand.CanExecute(e.SelectedItem)) { ItemSelectedCommand.Execute(e.SelectedItem); } } } else if (Command.CanExecute(resolvedParameter)) { Command.Execute(resolvedParameter); } }
public void Dispose() { ItemSelectedCommand.Dispose(); Population.Dispose(); IsMultipleSelection.Dispose(); }
public CustomListView() { ItemTapped += (s, e) => ItemSelectedCommand?.Execute(e.Item); }
public void LoadCalender() { CalenderViewControl = new Grid() { BackgroundColor = Color.Gray, ColumnSpacing = 2, RowSpacing = 2, HorizontalOptions = LayoutOptions.FillAndExpand, }; string[] monthNames = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.MonthNames; var curMonthName = monthNames[CurrentMonth - 1]; var rightSwipe = new Image() { Source = "Right.png", HeightRequest = 30, WidthRequest = 30, BackgroundColor = Color.White }; var leftSwipe = new Image() { Source = "Left.png", HeightRequest = 30, WidthRequest = 30, BackgroundColor = Color.White, }; TapGestureRecognizer rightTap = new TapGestureRecognizer(); rightTap.Tapped += Gi_SwipeLeft; rightSwipe.GestureRecognizers.Add(rightTap); TapGestureRecognizer leftTap = new TapGestureRecognizer(); leftTap.Tapped += Gi_SwipeRight; leftSwipe.GestureRecognizers.Add(leftTap); CalenderViewControl.Children.Add(leftSwipe, 0, 0); var monthLabel = new Label() { Text = curMonthName.ToString() + " " + CurrentYear.ToString(), HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.CenterAndExpand, }; var stack = new StackLayout() { BackgroundColor = Color.White, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand }; stack.Children.Add(monthLabel); CalenderViewControl.Children.Add(stack, 1, 0); Grid.SetColumnSpan(stack, 5); CalenderViewControl.Children.Add(rightSwipe, 6, 0); var weekDay = new Label() { Text = "Sun", TextColor = Color.Red, HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, }; stack = new StackLayout() { BackgroundColor = Color.White, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand }; stack.Children.Add(weekDay); CalenderViewControl.Children.Add(stack, 0, 1); weekDay = new Label() { Text = "Mon", HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, }; stack = new StackLayout() { BackgroundColor = Color.White, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand }; stack.Children.Add(weekDay); CalenderViewControl.Children.Add(stack, 1, 1); weekDay = new Label() { Text = "Tue", HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, }; stack = new StackLayout() { BackgroundColor = Color.White, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand }; stack.Children.Add(weekDay); CalenderViewControl.Children.Add(stack, 2, 1); weekDay = new Label() { Text = "Wed", HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, }; stack = new StackLayout() { BackgroundColor = Color.White, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand }; stack.Children.Add(weekDay); CalenderViewControl.Children.Add(stack, 3, 1); weekDay = new Label() { Text = "Thu", HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, }; stack = new StackLayout() { BackgroundColor = Color.White, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand }; stack.Children.Add(weekDay); CalenderViewControl.Children.Add(stack, 4, 1); weekDay = new Label() { Text = "Fri", HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, }; stack = new StackLayout() { BackgroundColor = Color.White, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand }; stack.Children.Add(weekDay); CalenderViewControl.Children.Add(stack, 5, 1); weekDay = new Label() { Text = "Sat", HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, }; stack = new StackLayout() { BackgroundColor = Color.White, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand }; stack.Children.Add(weekDay); CalenderViewControl.Children.Add(stack, 6, 1); CurrentDay = (CurrentMonth == DateTime.Now.Month && CurrentYear == DateTime.Now.Year) ? DateTime.Now.Day : 0; var startDaytoPrintInCalender = -1; switch (CurrentDayOfTheWeek) { case DayOfWeek.Sunday: startDaytoPrintInCalender = 0; break; case DayOfWeek.Monday: startDaytoPrintInCalender = 1; break; case DayOfWeek.Tuesday: startDaytoPrintInCalender = 2; break; case DayOfWeek.Wednesday: startDaytoPrintInCalender = 3; break; case DayOfWeek.Thursday: startDaytoPrintInCalender = 4; break; case DayOfWeek.Friday: startDaytoPrintInCalender = 5; break; case DayOfWeek.Saturday: startDaytoPrintInCalender = 6; break; default: startDaytoPrintInCalender = -1; break; } Label dateLabel = null; Frame frame = null; bool startDaySelected = false; int day = 1; for (int i = 2; i < 8; i++) { for (int j = 0; j < 7; j++) { if (!startDaySelected) { if (j >= startDaytoPrintInCalender) { startDaySelected = true; } } else { day++; } if (day > CurrentNoOfDaysInAMonth && j == 0) { break; } frame = new Frame() { HasShadow = false, Padding = 0, BackgroundColor = CurrentDay == day ? Color.Gray : Color.Transparent, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand }; dateLabel = new Label() { Text = startDaySelected && day <= CurrentNoOfDaysInAMonth ? (day).ToString() : string.Empty, TextColor = j == 0 ? Color.Red : Color.Default, FontSize = 18, FontAttributes = FontAttributes.Bold, VerticalOptions = LayoutOptions.CenterAndExpand, HorizontalOptions = LayoutOptions.CenterAndExpand }; frame.Content = dateLabel; stack = new StackLayout() { BackgroundColor = CurrentDay == day?Color.FromHex("bf3122") : Color.White, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand }; stack.Children.Add(dateLabel); if (startDaySelected && day <= CurrentNoOfDaysInAMonth) { TapGestureRecognizer dateTap = new TapGestureRecognizer(); var dateTime = new DateTime(CurrentYear, CurrentMonth, day); //dateTap.SetBinding(TapGestureRecognizer.CommandProperty, "DateSelected"); dateTap.Tapped += (sender, e) => { if (ItemSelectedCommand != null && ItemSelectedCommand.CanExecute(null)) { ItemSelectedCommand.Execute(dateTime); } }; dateTap.CommandParameter = dateTime; stack.GestureRecognizers.Add(dateTap); } CalenderViewControl.Children.Add(stack, j, i); } } gi.Content = CalenderViewControl; this.Content = gi; }
private void ProcessItemSelected() { ItemSelectedCommand?.Execute(this); }