1

MudDialog当用户单击“确定”按钮时,有没有办法防止关闭?我想在执行操作时保持对话框打开。

private async Task OpenMyDialogAsync()
{
    var dialog = DialogService.Show<MyDialog>("My Dialog");
    var result = await dialog.Result;


    if (!result.Cancelled)
    {
        // Prevent closing the dialog when user click the OK button
        // to perform an action
    }
}

另一个想法是在MyDialog实例中注册一个事件。但是方法返回的结果Show()不包含MyDialog实例。有什么想法可以解决这个问题吗?

4

1 回答 1

1

那为什么要关闭呢?您的“确定”按钮有一个OnClick.

而不是这个:

<MudButton Color="Color.Primary" OnClick="Submit">Ok</MudButton>
void Submit() => MudDialog.Close(DialogResult.Ok(true));

做这个:

<MudButton Color="Color.Primary" OnClick="RunMyStuff">Ok</MudButton>
    
void RunMyStuff(){
    // Run your stuff here
    // Done
    Submit();
}

void Submit() => MudDialog.Close(DialogResult.Ok(true));
于 2021-11-05T12:59:09.810 回答