From 23774a4546ed9e1402640e57bed2b87870eaece3 Mon Sep 17 00:00:00 2001 From: Argo-Lenovo Date: Sun, 9 Oct 2022 22:45:31 +0800 Subject: [PATCH 1/7] =?UTF-8?q?fix:=20=E6=9B=B4=E6=96=B0=E8=B5=84=E6=BA=90?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/BootstrapBlazor.Shared/Locales/en.json | 4 ++-- src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/BootstrapBlazor.Shared/Locales/en.json b/src/BootstrapBlazor.Shared/Locales/en.json index 6587affb8..15fde49b5 100644 --- a/src/BootstrapBlazor.Shared/Locales/en.json +++ b/src/BootstrapBlazor.Shared/Locales/en.json @@ -3963,14 +3963,14 @@ "Attr7": "Data source", "Attr8": "Click the command button callback method", "Attr9": "Right button template", - "ItemsText1": "document", + "ItemsText1": "Document", "Items1": "Task 1", "Items2": "Task 2", "Items3": "Task 3", "Items4": "Open", "Items5": "Save", "Items6": "Save as", - "ItemsText2": "edit", + "ItemsText2": "Edit", "Items7": "Open", "Items8": "Save", "Items9": "Save as", diff --git a/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor b/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor index 92899daa3..f803b4652 100644 --- a/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor +++ b/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor @@ -23,7 +23,7 @@
- @Localizer["P8"] + @Localizer["P9"]
-- Gitee From 60097037f287351c7407dcbeaf074179d535a8b5 Mon Sep 17 00:00:00 2001 From: Argo-Lenovo Date: Sun, 9 Oct 2022 22:47:04 +0800 Subject: [PATCH 2/7] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=20BodyTemplate?= =?UTF-8?q?=20=E6=A8=A1=E6=9D=BF=E7=94=A8=E4=BA=8E=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=20RibbonTab=20=E6=A0=87=E7=AD=BE=E9=A1=B5=E5=86=85?= =?UTF-8?q?=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Components/RibbonTab/RibbonTab.razor | 15 +++++++++++++++ .../Components/RibbonTab/RibbonTab.razor.cs | 12 ++++++++++++ .../Components/RibbonTab/RibbonTabItem.cs | 10 ++++++++++ 3 files changed, 37 insertions(+) diff --git a/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor b/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor index bcddaafad..87a662ec5 100644 --- a/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor +++ b/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor @@ -50,4 +50,19 @@ } +
+ @if(BodyTemplate != null) + { + @BodyTemplate + } + else + { + @foreach(var item in GetItems()) + { +
+ @RenderBodyTemplate(item) +
+ } + } +
diff --git a/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs b/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs index 4163812cb..1eaec9b54 100644 --- a/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs +++ b/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs @@ -39,6 +39,12 @@ public partial class RibbonTab : IDisposable [Parameter] public string RibbonArrowPinIcon { get; set; } = "fa-solid fa-thumbtack fa-rotate-90"; + /// + /// 获得/设置 Body 模板 + /// + [Parameter] + public RenderFragment? BodyTemplate { get; set; } + private bool IsFloat { get; set; } private string? ArrowIconClassString => CssBuilder.Default() @@ -47,6 +53,10 @@ public partial class RibbonTab : IDisposable .AddClass(RibbonArrowPinIcon, IsFloat && IsExpand) .Build(); + private string? GetBodyItemClassString(RibbonTabItem item) => CssBuilder.Default("ribbon-body collapse") + .AddClass("show", item.IsActive) + .Build(); + /// /// 获得/设置 数据源 /// @@ -145,6 +155,8 @@ public partial class RibbonTab : IDisposable private static RenderFragment? RenderTemplate(RibbonTabItem item) => item.Component?.Render() ?? item.Template; + private static RenderFragment? RenderBodyTemplate(RibbonTabItem item) => item.BodyComponent?.Render() ?? item.BodyTemplate?.Invoke(item); + /// /// Dispose 方法 /// diff --git a/src/BootstrapBlazor/Components/RibbonTab/RibbonTabItem.cs b/src/BootstrapBlazor/Components/RibbonTab/RibbonTabItem.cs index bf780716c..77704d741 100644 --- a/src/BootstrapBlazor/Components/RibbonTab/RibbonTabItem.cs +++ b/src/BootstrapBlazor/Components/RibbonTab/RibbonTabItem.cs @@ -28,4 +28,14 @@ public class RibbonTabItem : MenuItem /// 获得/设置 动态组件实例 /// public BootstrapDynamicComponent? Component { get; set; } + + /// + /// 获得/设置 RibbonTabItem 内容模板 + /// + public BootstrapDynamicComponent? BodyComponent { get; set; } + + /// + /// 获得/设置 RibbonTabItem 内容模板 + /// + public RenderFragment? BodyTemplate { get; set; } } -- Gitee From 6d12d354dcacdcc577366882f1d1c0bc2fd55a0d Mon Sep 17 00:00:00 2001 From: Argo-Lenovo Date: Sun, 9 Oct 2022 22:53:04 +0800 Subject: [PATCH 3/7] =?UTF-8?q?Revert=20"feat:=20=E5=A2=9E=E5=8A=A0=20Body?= =?UTF-8?q?Template=20=E6=A8=A1=E6=9D=BF=E7=94=A8=E4=BA=8E=E8=87=AA?= =?UTF-8?q?=E5=AE=9A=E4=B9=89=20RibbonTab=20=E6=A0=87=E7=AD=BE=E9=A1=B5?= =?UTF-8?q?=E5=86=85=E5=AE=B9"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 60097037f287351c7407dcbeaf074179d535a8b5. --- .../Components/RibbonTab/RibbonTab.razor | 15 --------------- .../Components/RibbonTab/RibbonTab.razor.cs | 12 ------------ .../Components/RibbonTab/RibbonTabItem.cs | 10 ---------- 3 files changed, 37 deletions(-) diff --git a/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor b/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor index 87a662ec5..bcddaafad 100644 --- a/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor +++ b/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor @@ -50,19 +50,4 @@ } -
- @if(BodyTemplate != null) - { - @BodyTemplate - } - else - { - @foreach(var item in GetItems()) - { -
- @RenderBodyTemplate(item) -
- } - } -
diff --git a/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs b/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs index 1eaec9b54..4163812cb 100644 --- a/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs +++ b/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs @@ -39,12 +39,6 @@ public partial class RibbonTab : IDisposable [Parameter] public string RibbonArrowPinIcon { get; set; } = "fa-solid fa-thumbtack fa-rotate-90"; - /// - /// 获得/设置 Body 模板 - /// - [Parameter] - public RenderFragment? BodyTemplate { get; set; } - private bool IsFloat { get; set; } private string? ArrowIconClassString => CssBuilder.Default() @@ -53,10 +47,6 @@ public partial class RibbonTab : IDisposable .AddClass(RibbonArrowPinIcon, IsFloat && IsExpand) .Build(); - private string? GetBodyItemClassString(RibbonTabItem item) => CssBuilder.Default("ribbon-body collapse") - .AddClass("show", item.IsActive) - .Build(); - /// /// 获得/设置 数据源 /// @@ -155,8 +145,6 @@ public partial class RibbonTab : IDisposable private static RenderFragment? RenderTemplate(RibbonTabItem item) => item.Component?.Render() ?? item.Template; - private static RenderFragment? RenderBodyTemplate(RibbonTabItem item) => item.BodyComponent?.Render() ?? item.BodyTemplate?.Invoke(item); - /// /// Dispose 方法 /// diff --git a/src/BootstrapBlazor/Components/RibbonTab/RibbonTabItem.cs b/src/BootstrapBlazor/Components/RibbonTab/RibbonTabItem.cs index 77704d741..bf780716c 100644 --- a/src/BootstrapBlazor/Components/RibbonTab/RibbonTabItem.cs +++ b/src/BootstrapBlazor/Components/RibbonTab/RibbonTabItem.cs @@ -28,14 +28,4 @@ public class RibbonTabItem : MenuItem /// 获得/设置 动态组件实例 /// public BootstrapDynamicComponent? Component { get; set; } - - /// - /// 获得/设置 RibbonTabItem 内容模板 - /// - public BootstrapDynamicComponent? BodyComponent { get; set; } - - /// - /// 获得/设置 RibbonTabItem 内容模板 - /// - public RenderFragment? BodyTemplate { get; set; } } -- Gitee From fad82f2bab72bad86bf1e56b5fc7e651b0ea7cb0 Mon Sep 17 00:00:00 2001 From: Argo-Lenovo Date: Sun, 9 Oct 2022 22:56:41 +0800 Subject: [PATCH 4/7] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=20OnTabHeaderCli?= =?UTF-8?q?ckAsync=20=E5=9B=9E=E8=B0=83=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Components/RibbonTab/RibbonTab.razor.cs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs b/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs index 4163812cb..aaee0b72c 100644 --- a/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs +++ b/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs @@ -62,6 +62,12 @@ public partial class RibbonTab : IDisposable [Parameter] public Func? OnTabItemClickAsync { get; set; } + /// + /// 获得/设置 点击标签 Header 回调方法 + /// + [Parameter] + public Func? OnTabHeaderClickAsync { get; set; } + /// /// 获得/设置 右侧按钮模板 /// @@ -116,6 +122,10 @@ public partial class RibbonTab : IDisposable private async Task OnClickTab(TabItem item) { + if (OnTabHeaderClickAsync != null) + { + await OnTabHeaderClickAsync(item.Text, item.Url); + } if (OnTabItemClickAsync != null) { var tab = GetItems().First(i => i.Text == item.Text); -- Gitee From 061d86b93c8825b32a8c6b1235055dde68cee3f0 Mon Sep 17 00:00:00 2001 From: Argo-Lenovo Date: Sun, 9 Oct 2022 23:15:10 +0800 Subject: [PATCH 5/7] =?UTF-8?q?refactor:=20=E6=9B=B4=E6=96=B0=E5=9B=9E?= =?UTF-8?q?=E8=B0=83=E6=96=B9=E6=B3=95=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Samples/RibbonTabs.razor.cs | 2 +- .../Components/RibbonTab/RibbonTab.razor.cs | 16 ++++++++-------- test/UnitTest/Components/RibbonTabTest.cs | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor.cs b/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor.cs index 953ad529c..3b5e7136c 100644 --- a/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor.cs +++ b/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor.cs @@ -111,7 +111,7 @@ public partial class RibbonTabs }, new AttributeItem() { - Name = nameof(RibbonTab.OnTabItemClickAsync), + Name = nameof(RibbonTab.OnItemClickAsync), Description = Localizer["Attr8"], Type = "Func", ValueList = " — ", diff --git a/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs b/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs index aaee0b72c..454bd54fa 100644 --- a/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs +++ b/src/BootstrapBlazor/Components/RibbonTab/RibbonTab.razor.cs @@ -60,13 +60,13 @@ public partial class RibbonTab : IDisposable /// 获得/设置 点击命令按钮回调方法 /// [Parameter] - public Func? OnTabItemClickAsync { get; set; } + public Func? OnItemClickAsync { get; set; } /// /// 获得/设置 点击标签 Header 回调方法 /// [Parameter] - public Func? OnTabHeaderClickAsync { get; set; } + public Func? OnHeaderClickAsync { get; set; } /// /// 获得/设置 右侧按钮模板 @@ -114,22 +114,22 @@ public partial class RibbonTab : IDisposable private async Task OnClick(RibbonTabItem item) { - if (OnTabItemClickAsync != null) + if (OnItemClickAsync != null) { - await OnTabItemClickAsync(item); + await OnItemClickAsync(item); } } private async Task OnClickTab(TabItem item) { - if (OnTabHeaderClickAsync != null) + if (OnHeaderClickAsync != null) { - await OnTabHeaderClickAsync(item.Text, item.Url); + await OnHeaderClickAsync(item.Text, item.Url); } - if (OnTabItemClickAsync != null) + if (OnItemClickAsync != null) { var tab = GetItems().First(i => i.Text == item.Text); - await OnTabItemClickAsync(tab); + await OnItemClickAsync(tab); } if (IsFloat) { diff --git a/test/UnitTest/Components/RibbonTabTest.cs b/test/UnitTest/Components/RibbonTabTest.cs index 357915834..e80d6d1b9 100644 --- a/test/UnitTest/Components/RibbonTabTest.cs +++ b/test/UnitTest/Components/RibbonTabTest.cs @@ -22,7 +22,7 @@ public class RibbonTabTest : BootstrapBlazorTestBase pb.Add(a => a.RibbonArrowUpIcon, "test-up"); pb.Add(a => a.RibbonArrowDownIcon, "test-down"); pb.Add(a => a.RibbonArrowPinIcon, "test-pin"); - pb.Add(a => a.OnTabItemClickAsync, item => + pb.Add(a => a.OnItemClickAsync, item => { tabItem = item; return Task.CompletedTask; -- Gitee From 8c4601aaad284cfce76a8c5005bf56dd339db33c Mon Sep 17 00:00:00 2001 From: Argo-Lenovo Date: Sun, 9 Oct 2022 23:15:47 +0800 Subject: [PATCH 6/7] =?UTF-8?q?doc:=20=E6=9B=B4=E6=96=B0=E7=82=B9=E5=87=BB?= =?UTF-8?q?=20Tab=20=E6=A0=87=E7=AD=BE=E9=A1=B5=E7=A4=BA=E4=BE=8B=E6=96=87?= =?UTF-8?q?=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Samples/RibbonTabs.razor | 8 ++++++++ .../Samples/RibbonTabs.razor.cs | 17 +++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor b/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor index f803b4652..76526f357 100644 --- a/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor +++ b/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor @@ -29,4 +29,12 @@ + + +
+
@Localizer["ItemsText1"]
+
@Localizer["ItemsText2"]
+
+
+ diff --git a/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor.cs b/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor.cs index 3b5e7136c..a7a3cc6f1 100644 --- a/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor.cs +++ b/src/BootstrapBlazor.Shared/Samples/RibbonTabs.razor.cs @@ -51,6 +51,23 @@ public partial class RibbonTabs }; } + private string? ActiveTabText { get; set; } + + private string? FileClassString => CssBuilder.Default("ribbon-body collapse") + .AddClass("show", ActiveTabText == Localizer["ItemsText1"]) + .Build(); + + private string? EditClassString => CssBuilder.Default("ribbon-body collapse") + .AddClass("show", ActiveTabText == Localizer["ItemsText2"]) + .Build(); + + private Task OnHeaderClickAsync(string text, string url) + { + ActiveTabText = text; + StateHasChanged(); + return Task.CompletedTask; + } + private IEnumerable GetAttributes() => new AttributeItem[] { new AttributeItem() -- Gitee From 809a39f7ef535d37908c9ea63962ab52c6a9cfa0 Mon Sep 17 00:00:00 2001 From: Argo-Lenovo Date: Mon, 10 Oct 2022 01:09:44 +0800 Subject: [PATCH 7/7] chore: bump version 6.11.4 --- src/BootstrapBlazor/BootstrapBlazor.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/BootstrapBlazor/BootstrapBlazor.csproj b/src/BootstrapBlazor/BootstrapBlazor.csproj index 7e65f29a2..f6eb266a3 100644 --- a/src/BootstrapBlazor/BootstrapBlazor.csproj +++ b/src/BootstrapBlazor/BootstrapBlazor.csproj @@ -1,7 +1,7 @@ - 6.11.3 + 6.11.4 -- Gitee