“我的对话框”是一个带有图像的简单框架,一个用于显示问题的标签以及两个带有TapCommand的标签(是/否)。
我已经用DialogPage.xaml和DialogPageViewModel设置了容器,并注入了要打开对话框的ViewModel中。
这是我用来调用对话框的代码:
public void ShowDialog()
{
_dialogService.ShowDialog("DiscardPopup", CloseDialogCallback);
}
void CloseDialogCallback(IDialogResult dialogResult)
{
var goBack = dialogResult.Parameters.GetValue<bool>("GoBack");
if (goBack)
NavigationService.GoBackAsync();
}
如果用户点击“是标签”,我将执行以下命令:
YesCommand = new DelegateCommand(() => YesTapped());
private void YesTapped()
{
IDialogParameters pa = new DialogParameters();
pa.Add("GoBack", true);
RequestClose(pa);
}
如果用户轻按“无标签”,我只需拨打:
NoCommand = new DelegateCommand(() => RequestClose(null));
“问题”是当ShowDialog被激发时,DiscardPopup最多需要3秒钟才能显示出来。 有没有办法使其更快?
TapCommands也会发生这种情况,在调用RequestClose的2到3秒内。
答案 0 :(得分:1)
如果没有实际的代码确切地告诉您问题出在哪里,那将是最好的猜测。根据您对我上面的评论的反馈意见,我提出以下建议: