关闭MudDialog后页面不刷新



我尝试使用mud对话框添加或编辑显示在MudTables中的数据。当我添加新数据或编辑时,删除了关闭对话框后不刷新的表。只有在按下F5后,我才能看到更新的数据集。

My Dialog方法:

private async Task OpenDialog(TaxesModel tax = null){
var parameters = new DialogParameters{{ nameof(TaxDialog.Model), tax}};

DialogService.Show<TaxDialog>(nameof(TaxDialog).Humanize(), parameters);


//reload list of taxes
await GetTaxesAsync();
StateHAsChanged();
}

在这种情况下,StateHAsChanged()没有刷新页面。但在另一种没有对话的情况下,它可以正常工作。

对话框一打开,在数据库发生任何更改之前,您就要刷新数据。在对DialogService.Show的调用之后,执行立即继续到下一行await GetTaxesAsync()

您需要等待对话框关闭,然后获取新数据。

private async Task OpenDialog(TaxesModel tax = null){
var parameters = new DialogParameters{ { nameof(TaxDialog.Model), tax } };
var dialog = DialogService.Show<TaxDialog>(nameof(TaxDialog).Humanize(), parameters);

// wait for the dialog to close
// execution is stopped here until the dialog returns a result
var result = await dialog.Result;
if (!result.Cancelled)
{
await GetTaxesAsync();
// StateHasChanged call is not needed I think
//StateHasChanged();
}
}

https://mudblazor.com/components/dialog#passing-数据

相关内容

  • 没有找到相关文章

最新更新