Exemplo n.º 1
0
        protected override void OnNavigatedTo (System.Windows.Navigation.NavigationEventArgs e)
        {
            base.OnNavigatedTo (e);

            var viewModel = new FavoritesViewModel (App.Current.FavoritesRepository, true);
            DataContext = viewModel;
            InstructionsText.Visibility = viewModel.IsEmpty ? Visibility.Visible : Visibility.Collapsed;
        }
Exemplo n.º 2
0
        protected override void OnStart ()
        {
            base.OnStart ();

            viewModel = new FavoritesViewModel (Android.Application.SharedFavoritesRepository, groupByLastName: false);

            ListAdapter = new PeopleGroupsAdapter () {
                ItemsSource = viewModel.Groups,
            };
        }
		protected async override void OnAppearing ()
		{
			base.OnAppearing ();

			if (LoginViewModel.ShouldShowLogin (App.LastUseTime))
				await Navigation.PushModalAsync (new LoginView ());

			favoritesRepository = await XmlFavoritesRepository.OpenIsolatedStorage ("XamarinFavorites.xml");

			if (favoritesRepository.GetAll ().Count () == 0)
				favoritesRepository = await XmlFavoritesRepository.OpenFile ("XamarinFavorites.xml");

			viewModel = new FavoritesViewModel (favoritesRepository, true);
			listView.ItemsSource = viewModel.Groups;
			SetToolbarItems (true);
		}
        public FavoritesViewController(IFavoritesRepository favoritesRepository, IDirectoryService service, Search savedSearch)
        {
            this.favoritesRepository = favoritesRepository;

            Title = "Favorites";

            viewModel = new FavoritesViewModel (favoritesRepository, groupByLastName: true);
            viewModel.PropertyChanged += HandleViewModelPropertyChanged;

            searchViewModel = new SearchViewModel (service, savedSearch);

            //
            // Configure this view
            //
            var favoritesDelegate = new PeopleGroupsDelegate (TableView);
            favoritesDelegate.PersonSelected += HandlePersonSelected;

            TableView.DataSource = new PeopleGroupsDataSource (viewModel.Groups);
            TableView.Delegate = favoritesDelegate;
            TableView.SectionIndexMinimumDisplayRowCount = 10;

            //
            // Configure the search bar
            //
            searchBar = new UISearchBar (new CGRect (0f, 0f, 320f, 44f)) {
                ShowsScopeBar = true,
            };

            searchBar.ScopeButtonTitles = new[] { "Name", "Title", "Dept", "All" };
            searchBar.SelectedScopeButtonIndex = (int)savedSearch.Property;
            searchController = new UISearchDisplayController (searchBar, this) {
                SearchResultsDataSource = new PeopleGroupsDataSource (searchViewModel.Groups),
                Delegate = new SearchDisplayDelegate (searchViewModel)
            };

            var searchDelegate = new PeopleGroupsDelegate (searchController.SearchResultsTableView);
            searchController.SearchResultsTableView.SectionIndexMinimumDisplayRowCount = 10;
            searchDelegate.PersonSelected += HandleSearchPersonSelected;
            searchController.SearchResultsDelegate = searchDelegate;

            TableView.TableHeaderView = searchBar;
        }
		protected async override void OnAppearing ()
		{
			base.OnAppearing ();

			if (LoginViewModel.ShouldShowLogin (App.LastUseTime)) {
				Navigation.PushModalAsync (new LoginXaml ());
			}

			//
			// Load the favorites
			//
			favoritesRepository = await XmlFavoritesRepository.OpenIsolatedStorage ("XamarinFavorites.xml");

			if (favoritesRepository.GetAll ().Count () == 0) {
				favoritesRepository = await XmlFavoritesRepository.OpenFile ("XamarinFavorites.xml");
			}

			viewModel = new FavoritesViewModel (favoritesRepository, false);

			listView.ItemsSource = viewModel.Groups;
		}