You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Blazor插入文本未实时更新,如何让MudTextField输入同步显示在MudBadge上

问题原因

MudTextField 默认的 @bind-Value 绑定的是 onchange 事件,仅会在输入框失焦时同步值,你同时声明自定义 @oninput 事件和默认 @bind-Value 会产生逻辑冲突,导致值更新后没有触发实时渲染。

解决方案

方案1(最推荐):使用 MudTextField 自带的 Immediate 属性

直接删除自定义的 @oninput 事件,给组件增加 Immediate="true" 配置即可,该属性会让绑定值在每次输入字符时实时更新,无需等待失焦。
修改后的输入框代码:

<MudTextField @bind-Value="@itemAttribute.Title" Immediate="true" />

方案2:自定义输入事件处理

如果需要在输入时执行额外自定义逻辑,可以放弃默认 @bind-Value 写法,手动绑定值和输入事件,必要时调用 StateHasChanged() 主动触发渲染:
修改后的输入框代码:

<MudTextField Value="@itemAttribute.Title" 
              @oninput="(e) => {
                  itemAttribute.Title = e.Value?.ToString() ?? string.Empty;
                  StateHasChanged();
              }" />

内容的提问来源于stack exchange,提问作者T0bi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 02:48:04