Xamarin在后面的代码中形成单击事件,不等待视图模型中的异步确认

时间:2018-03-20 13:51:20

标签: c# xamarin mvvm xamarin.forms

我在CommandViewModel绑定private async void ExecuteCanceledCommand() { bool confirmResult = await Application.Current.MainPage.DisplayAlert("Cancel", "Are you sure you want to cancel?", "OK", "Cancel"); if (confirmResult) { // do stuff in viewmodel } else return; } } 的网页上有一个取消按钮:

Clicked

以及XAML代码后面的public void OnCanceledConfirmed() { // Do stuff in code behind } 属性:

OnCanceledConfirmed()

如果用户从ViewModel触发的DisplayAlert模式中选择“确定”,我只想在parentId = this.hostElem.nativeElement.id + '_id'; <input class="form-control" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" aria-label="Date picker" type="text" [id]="parentId" #dateInput [disabled]="isDisabled" (focus)="focusInput()" (input)="input$.next($event.target.value)"> <label class="input-group-append btn" [for]="parentId"> <span class="fa fa-calendar"></span> </label> 方法中执行操作。当从后面的代码中单击确定按钮时,有没有办法执行此操作或触发此操作?

1 个答案:

答案 0 :(得分:1)

我通过将模态确认对话框移到后面的代码而不是ViewModel来解决这个问题。这允许我在后面的代码中做我想要的,然后我可以从那里调用ViewModel中我想要的方法。