diff --git a/src/BootstrapBlazor/BootstrapBlazor.csproj b/src/BootstrapBlazor/BootstrapBlazor.csproj index 1a7f7ef8660..d7b84e4d7b4 100644 --- a/src/BootstrapBlazor/BootstrapBlazor.csproj +++ b/src/BootstrapBlazor/BootstrapBlazor.csproj @@ -1,7 +1,7 @@  - 9.6.1-beta02 + 9.6.1-beta03 diff --git a/src/BootstrapBlazor/Extensions/DialogServiceExtensions.cs b/src/BootstrapBlazor/Extensions/DialogServiceExtensions.cs index 38468f9d57a..999edeef743 100644 --- a/src/BootstrapBlazor/Extensions/DialogServiceExtensions.cs +++ b/src/BootstrapBlazor/Extensions/DialogServiceExtensions.cs @@ -8,10 +8,29 @@ namespace BootstrapBlazor.Components; /// -/// DialogService 扩展方法 +/// DialogService extensions method /// public static class DialogServiceExtensions { + /// + /// Show dialog with generic type. + /// + /// DialogService 服务实例 + /// 对话框标题,优先级高于 + /// TComponent 组件所需要的参数集合 + /// 指定弹窗组件 默认为 null 使用 组件内置弹窗组件 + public static Task Show(this DialogService service, string title, IDictionary? parameters = null, Dialog? dialog = null) where TComponent : IComponent + { + var option = new DialogOption(); + if (!string.IsNullOrEmpty(title)) + { + option.Title = title; + } + option.ShowFooter = false; + option.Component = BootstrapDynamicComponent.CreateComponent(parameters); + return service.Show(option, dialog); + } + /// /// 弹出搜索对话框 /// diff --git a/test/UnitTest/Components/DialogTest.cs b/test/UnitTest/Components/DialogTest.cs index b38c748d94a..29c4c60c4ff 100644 --- a/test/UnitTest/Components/DialogTest.cs +++ b/test/UnitTest/Components/DialogTest.cs @@ -573,6 +573,11 @@ await cut.InvokeAsync(() => dialog.ShowCloseDialog("Clos })); await cut.InvokeAsync(() => modal.Instance.CloseCallback()); #endregion + + #region Show Extensions Method + await cut.InvokeAsync(() => dialog.Show("Test Title")); + await cut.InvokeAsync(() => modal.Instance.CloseCallback()); + #endregion } private class MockValidateFormDialog : ComponentBase