首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何关闭MudBlazor芯片

如何关闭MudBlazor芯片
EN

Stack Overflow用户
提问于 2022-03-03 05:43:21
回答 1查看 394关注 0票数 0

我使用MudBlazor框架创建了一个简单的程序

Test.razor文件

代码语言:javascript
复制
    <MudTextField @bind-Value="TextValue" Label="Standard" Variant="Variant.Text"></MudTextField>
    <MudButton Variant="Variant.Filled" Color="Color.Primary" OnClick="Clicked" Class="mt-2">click</MudButton>
    <MudDivider Class="my-2"/>
    @foreach(var chip in chipText){
        <MudChip Variant="Variant.Text" Color="Color.Secondary" OnClose="Closed">@chip</MudChip>
    }
    
    @code{
    
        public string TextValue { get; set; }
        List<string> chipText=new List<string>();
    
        private void Clicked()
        {
            chipText.Add(TextValue);
            TextValue="";
            StateHasChanged();
        }
    
        void Closed(MudChip chip) {
           
           StateHasChanged();
        }
    
    
    }

当我在文本字段中输入文本并输入单击按钮时,我可以在芯片上显示该文本值。每个芯片都有一个关闭按钮。当我点击这个关闭按钮,它应该关闭。除了芯片关闭外,一切正常工作。我该怎么做??

EN

回答 1

Stack Overflow用户

发布于 2022-03-03 14:45:02

您需要从chip中删除相应的chipText。就像在列表中添加一个元素一样,添加一个MudChip,从列表中删除一个元素,在下一个呈现中删除一个MudChip。

代码语言:javascript
复制
<MudChip Variant="Variant.Text" Color="Color.Secondary" OnClose="@(() => Closed(chip))">@chip</MudChip>
代码语言:javascript
复制
void Closed(string chipToRemove) {
    chipText.Remove(chipToRemove);
}

我猜OnClose将自动调用StateHasChanged(),因此我们应该能够删除它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71332592

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档