示例#1
0
        public async Task <IActionResult> Index()
        {
            var userId = User.GetUserId();

            var circles = await _circlesRepository.GetCircles(userId);

            var viewModel = new CirclesViewModel {
                Circles = circles
            };

            return(View(viewModel));
        }
示例#2
0
        public async Task LoadPage()
        {
            var viewModel = new CirclesViewModel(Navigation);

            BindingContext = viewModel;

            var stack = new StackLayout();

            try
            {
                viewModel.Model = await App.ApiClient.GetMyOrganizationsAsync();
            }
            catch (Exception ex)
            {
                var page = new ContentPage();
                page.DisplayAlert("Error", ex.Message, "OK", "Cancel");
            }

            var cell = new DataTemplate(typeof(ListTextCell));

            cell.SetBinding(TextCell.TextProperty, "Name");
            cell.SetBinding(TextCell.DetailProperty, "Description");

            var list = new ListView {
                ItemsSource = viewModel.Model, ItemTemplate = cell
            };

            list.ItemSelected += async(sender, e) =>
            {
                var selectedCircle = (Organization)e.SelectedItem;
                var circlePage     = new CirclePage(selectedCircle.Id);

                await Navigation.PushAsync(circlePage);
            };
            stack.Children.Add(list);

            var createButton = new DefaultButton
            {
                Text = "CREATE CIRCLE"
            };

            createButton.Clicked += async(sender, e) =>
            {
                var createCirclePage = new CreateCircleDetailPage();
                await Navigation.PushAsync(createCirclePage);
            };

            stack.Children.Add(createButton);

            Content = stack;
        }