From bb98b43f61b9da7b1b2e009b4dbbcdf3d9ba218d Mon Sep 17 00:00:00 2001 From: zeroks <12777368+zeroks@user.noreply.gitee.com> Date: Sun, 21 Jan 2024 08:28:01 +0000 Subject: [PATCH] feat(CardUpload): add MaxUpload limit Signed-off-by: zeroks <12777368+zeroks@user.noreply.gitee.com> --- .../Components/Upload/CardUpload.razor | 22 +++++++------------ .../Components/Upload/CardUpload.razor.cs | 22 ++++++++++--------- 2 files changed, 20 insertions(+), 24 deletions(-) diff --git a/src/BootstrapBlazor/Components/Upload/CardUpload.razor b/src/BootstrapBlazor/Components/Upload/CardUpload.razor index 543579dd9..b04c26f8e 100644 --- a/src/BootstrapBlazor/Components/Upload/CardUpload.razor +++ b/src/BootstrapBlazor/Components/Upload/CardUpload.razor @@ -1,4 +1,4 @@ -@namespace BootstrapBlazor.Components +@namespace BootstrapBlazor.Components @typeparam TValue @inherits ButtonUploadBase @@ -30,28 +30,22 @@
@if (ShowZoomButton) { - } @if (ShowDownloadButton) { - } - @if (GetShowProgress(item)) - { - - }
- @if (ShowDeletedButton) + @if(ShowDeletedButton) { + disabled="@GetDeleteButtonDiabledString(item)" aria-label="delete" + TriggerClick="@(!IsDisabled)" OnClick="@(() => OnCardFileDelete(item))"> } @@ -62,11 +56,11 @@ } - + } - @if (CanUpload) + @if (CanUpload && (MaxUploads > GetUploadFiles().Count)) {
diff --git a/src/BootstrapBlazor/Components/Upload/CardUpload.razor.cs b/src/BootstrapBlazor/Components/Upload/CardUpload.razor.cs index 2e6051db0..cde87bd2f 100644 --- a/src/BootstrapBlazor/Components/Upload/CardUpload.razor.cs +++ b/src/BootstrapBlazor/Components/Upload/CardUpload.razor.cs @@ -1,4 +1,4 @@ -// Copyright (c) Argo Zhang (argo@163.com). All rights reserved. +// Copyright (c) Argo Zhang (argo@163.com). All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. // Website: https://www.blazor.zone or https://argozhang.github.io/ @@ -13,26 +13,22 @@ public partial class CardUpload .AddClass("is-single", IsSingle) .Build(); - private string? GetDisabledString(UploadFile item) => (!IsDisabled && item.Uploaded && item.Code == 0) ? null : "disabled"; + private string? GetDiabledString(UploadFile item) => (!IsDisabled && item.Uploaded && item.Code == 0) ? null : "disabled"; private bool ShowPreviewList => GetUploadFiles().Any(); private List PreviewList => GetUploadFiles().Select(i => i.PrevUrl).ToList(); - private string? GetDeleteButtonDisabledString(UploadFile item) => (!IsDisabled && item.Uploaded) ? null : "disabled"; + private string? GetDeleteButtonDiabledString(UploadFile item) => (!IsDisabled && item.Uploaded) ? null : "disabled"; private string? CardItemClass => CssBuilder.Default("upload-item") .AddClass("disabled", IsDisabled) .Build(); - private string? StatusIconString => CssBuilder.Default("valid-icon valid") + private string? StatusIconString => CssBuilder.Default("valid-icon") .AddClass(StatusIcon) .Build(); - private string? DeleteIconString => CssBuilder.Default("valid-icon invalid") - .AddClass(DeleteIcon) - .Build(); - private string PreviewerId => $"prev_{Id}"; /// @@ -84,15 +80,21 @@ public partial class CardUpload public bool ShowZoomButton { get; set; } = true; /// - /// 获得/设置 是否显示删除按钮 默认 true 显示 + /// 获得/设置 是否显示删除按钮 /// [Parameter] - public bool ShowDeletedButton { get; set; } = true; + public bool ShowDeletedButton { get; set; } [Inject] [NotNull] private IIconTheme? IconTheme { get; set; } + /// + /// 获得/设置 最大上传个数 默认 true 显示 + /// + [Parameter] + public int MaxUploads { get; set; } = int.MaxValue; + /// /// /// -- Gitee