public CreateAcounteViewModel(INavigationService serviceNavigation) { _serviceNavigation = serviceNavigation; _service = new CreateAccountService(); Message = new FlowObservableCollection <MessageRegistrationModel>(); User = new UserModel(); loading = new PopUpLoadingMessageView(); IsEntry = "false"; IsButtonTerm = "false"; IsButtonConfirm = "false"; _ = InitialMessage(); Message.CollectionChanged += (sender, e) => { Page currentPage = Application.Current.MainPage.Navigation.NavigationStack.LastOrDefault(); ListView listView = currentPage.FindByName <ListView>("MessagesListView"); var target = Message[Message.Count - 1]; if (Device.RuntimePlatform == Device.iOS) { listView.ScrollTo(target, ScrollToPosition.MakeVisible, true); } else if (Device.RuntimePlatform == Device.Android) { listView.ScrollTo(target, ScrollToPosition.Start, true); } }; }
private async Task AcceptTerm() { IsButtonTerm = "false"; IsEntryVisible = "true"; User.Term = true; var ConfirmTermMessage = await _service.ConfirmTerm(); ConfirmTermMessage.Id = Message.Count; Message.Add(ConfirmTermMessage); loading = new PopUpLoadingMessageView(); await PopupNavigation.Instance.PushAsync(loading); var ConfirmedTermMessage = await _service.ConfirmedTerm(); ConfirmedTermMessage.Id = Message.Count; Message.Add(ConfirmedTermMessage); await loading.Close(); }
public async Task SendMessage(string message = null) { if (message != null) { Message.Add(new MessageRegistrationModel() { Id = Message.Count, Message = message, Type1 = "false", Type2 = "true", Type3 = "false" }); TextMenssage = null; } switch (Message.Count) { case 4: loading = new PopUpLoadingMessageView(); await PopupNavigation.Instance.PushAsync(loading); IsEntryVisible = "false"; IsButtonTerm = "true"; User.Name = message; var termMessage = await _service.MessageTerm(); termMessage.Id = Message.Count; Message.Add(termMessage); await loading.Close(); break; case 8: loading = new PopUpLoadingMessageView(); await PopupNavigation.Instance.PushAsync(loading); User.NickName = message; var passwordMessage = await _service.PasswordMessage(); passwordMessage.Id = Message.Count; Message.Add(passwordMessage); await loading.Close(); break; case 10: loading = new PopUpLoadingMessageView(); await PopupNavigation.Instance.PushAsync(loading); User.Password = message; var cepMessage = await _service.CepMessage(); cepMessage.Id = Message.Count; Message.Add(cepMessage); await loading.Close(); break; case 12: loading = new PopUpLoadingMessageView(); await PopupNavigation.Instance.PushAsync(loading); var address = await _service.GetAdrress(message); User.Cep = address.Cep; User.City = address.City; User.Uf = address.Uf; User.Road = address.Road; var roadMessage = await _service.HomeNumberMessage(); roadMessage.Id = Message.Count; Message.Add(roadMessage); await loading.Close(); break; case 14: loading = new PopUpLoadingMessageView(); await PopupNavigation.Instance.PushAsync(loading); User.HouseNumber = message; IsEntry = "false"; IsButtonConfirm = "true"; await loading.Close(); break; default: Console.WriteLine("Default case"); break; } }