Esempio n. 1
0
 protected override void OnAppearing()
 {
     base.OnAppearing();
     ItemsListView.BeginRefresh();
     if (viewModel.Items.Count == 0)
     {
         viewModel.LoadItemsCommand.Execute(null);
     }
 }
Esempio n. 2
0
        protected override void OnAppearing()
        {
            base.OnAppearing();

            if (viewModel.Items.Count == 0)
            {
                viewModel.LoadItemsCommand.Execute(null);
            }

            // Little hack to enforce item re-render. IObservable will not catch this.
            ItemsListView.BeginRefresh();
            ItemsListView.EndRefresh();
        }
Esempio n. 3
0
        void Handle_TextChanged(object sender, TextChangedEventArgs e)
        {
            var _container = BindingContext as FeedBacksViewModel;

            ItemsListView.BeginRefresh();

            if (string.IsNullOrWhiteSpace(e.NewTextValue))
            {
                ItemsListView.ItemsSource = _container.FeedBacks;
            }
            else
            {
                ItemsListView.ItemsSource = _container.FeedBacks.Where(i => i.Description.Contains(e.NewTextValue));
            }

            ItemsListView.EndRefresh();
        }
Esempio n. 4
0
        async void OnItemSelected(object sender, SelectedItemChangedEventArgs args)
        {
            var item = args.SelectedItem as Item;

            if (item == null)
            {
                return;
            }

            await Navigation.PushAsync(new ItemDetailPage(new ItemDetailViewModel(item)));

            ItemsListView.BeginRefresh();
            ItemsListView.SelectedItem = null;
            ItemsListView.EndRefresh();
            LoadItem();
            RefreshPronóstico();
        }
Esempio n. 5
0
        private async void Hinzufügen_Clicked(object sender, EventArgs e)
        {
            NewVorName.Text  = NewVorName.Text.Trim();
            NewNachName.Text = NewNachName.Text.Trim();

            if (NewVorName.Text == "" && NewNachName.Text == "")
            {
                await this.DisplayAlert("Name fehlt", "Bitte einen Namen Eintragen", "OK");

                return;
            }
            else if (viewModel.newItem.Id == -1 && viewModel.Items.FirstOrDefault(x => x.Vorname.Equals(NewVorName.Text) && x.Nachname.Equals(NewNachName.Text)) != null)
            {
                await this.DisplayAlert("Name Existiert bereits", "Der Gewünschte Name existiert bereits!!!", "OK");

                return;
            }
            try
            {
                if (NewGeb.Text.Length > 0)
                {
                    var geb = DateTime.ParseExact(NewGeb.Text, "dd.MM.yyyy", null);
                }
                if (NewTauf.Text.Length > 0)
                {
                    var tauf = DateTime.ParseExact(NewTauf.Text, "dd.MM.yyyy", null);
                }
            }
            catch (Exception)
            {
                await this.DisplayAlert("Falsches Datumsformat", "Datum konnte nicht erkannt werden. \n richtiges Format: TT.MM.JJJJ", "OK");

                return;
            }
            if (viewModel.newItem.Id == -1)
            {
                await viewModel.DataStore.AddItemAsync(viewModel.newItem);
            }
            else
            {
                await viewModel.DataStore.UpdateItemAsync(viewModel.newItem);
            }
            ItemsListView.BeginRefresh();
            Zurücksetzen_Clicked(sender, e);
        }
        //static public System.Collections.ObjectModel.ObservableCollection<Core.Messaging.Contact> List = new System.Collections.ObjectModel.ObservableCollection<Core.Messaging.Contact>();
        public void PopulateList(CryptogramLibrary.Messaging.Contact[] contacts)
        {
            ItemsListView.SelectedItem = null;

            //ItemsListView.BeginRefresh();
            //ListC.Clear();
            //foreach (var X in Contacts)
            //{
            //  ListC.Add(X, (Core.Messaging.Contact)X.Clone()); //Se non clono non funziona
            //}
            //ItemsListView.EndRefresh();
            //ItemsListView.ItemsSource = null; //Se Non lo tolgo e rimetto non funziona;
            //ItemsListView.ItemsSource = ListC.Values;
            //return;

            ItemsListView.BeginRefresh();
            var toRemove = new List <CryptogramLibrary.Messaging.Contact>();

            foreach (var I in List)
            {
                if (!contacts.Contains(I.Value))
                {
                    toRemove.Add(I.Key);
                }
            }
            toRemove.ForEach(x => { List.Remove(x); });

            foreach (var x in contacts)
            {
                if (!List.Values.Contains(x))
                {
                    List.Add((CryptogramLibrary.Messaging.Contact)x.Clone(), x);
                }
            }
            ItemsListView.ItemsSource = null; // Se non lo annullo e lo reimposto non funziona su Android

            var values = List.Keys;
            var sorted = values.OrderBy(o => o.Name).ToList();

            ItemsListView.ItemsSource = sorted;
            ItemsListView.EndRefresh();
        }
Esempio n. 7
0
        private async void MenuItem_OnDelete(object sender, EventArgs e)
        {
            try
            {
                var problem = ((MenuItem)sender).BindingContext as Problem;
                var api     = new ApiService().HseSupporterApi;

                if (problem == null)
                {
                    return;
                }
                await api.DeleteProblem(problem.Id);

                ItemsListView.BeginRefresh();
            }
            catch (Exception ex)
            {
                // Empty
            }
        }
Esempio n. 8
0
        public async void OnDelete(object sender, EventArgs e)
        {
            var mi = ((MenuItem)sender);

            ItemsListView.IsRefreshing = true;
            var answer = await DisplayAlert("Registro de Atendimento", "Você deseja remover este registro?", "Sim", "Não");

            if (answer)
            {
                Task.Run(async() =>
                {
                    Item item    = (Item)mi.CommandParameter;
                    var resposta = await ws.QueryDelete("controldesk.atendimento_historico", item.id, "id");
                }).Wait();
                ItemsListView.BeginRefresh();
                await DisplayAlert("Registro de atendimento", "O registro foi removido com sucesso", "OK");

                ItemsListView.IsRefreshing = false;
            }
        }