我的剃刀页面上有这样的放射组

<MudRadioGroup T="string" SelectedOption="@selectedName" SelectedOptionChanged="OnSelectedOptionChanged">
                <MudRadio Option="@("Adam")" Color="Color.Primary">Index</MudRadio>
                <MudRadio Option="@("Greg")" Color="Color.Primary">Regex</MudRadio>
 </MudRadioGroup>
 @if (_isOk)
 {
      <MudTextField Value="@prop1" Label="txt1" />
      <MudTextField Value="@prop2" Label="txt2" />
  }
  else
  {
      <MudTextField Value="prop3" Label="txt3" />
  }

在代码隐藏中,我绑定了如下所示的单选群组

 private string selectedName = string.Empty;
 private bool _isOk;
 protected override void OnInitialized()
 {
    if (string.IsNullOrEmpty(ScanRule.RegexRule))
    {
        selectedName = "Adam";
        _isOk= true;
    }
    else
    {
        selectedName = "Greg";
        _isOk= false;
    }
  }

 private void OnSelectedOptionChanged(string selectedOption)
 {
    _isOk= selectedOption == "Adam";
 }

如果我try 更改选项按钮,则不会发生任何react .当我在OnseltedOptionChanged方法中设置调试点并try 更改选项按钮时,它两次进入它,我认为这也是错误的.

推荐答案

如果你使用SelectedOptionSelectedOptionChanged.

然后,您分配给SelectedOptionChanged(即OnSelectedOptionChanged)的处理程序方法还需要处理您在SelectedOption(即selectedName)上声明的变量的值的更改

private void OnSelectedOptionChanged(string selectedOption)
 {
    selectedName= selectedOption;
    _isOk= selectedName== "Adam";
 }

如果您使用@BIND指令@bind-SelectedOption="selectedName",这是自动完成的.

MudBlazor Snippet

Csharp相关问答推荐

我可以 suppress 规则CS 9035一次吗?

Blazor:类型或命名空间名称Components在命名空间中不存在''

如何使用C#中的图形API更新用户配置文件图像

有没有办法把+02:00转换成TimeSpan?""

一种安全的方式来存储SSH凭证(MAUI/C#应用程序)

如何使用C#Interop EXCEL创建度量衡

从Blob存储中提取tar.gz文件并将提取结果上载到另一个Blob存储

方法从数据表中只 Select 一个条件?

HttpClient 415不支持的媒体类型错误

源代码生成器项目使用`dotnet build`编译,而不是在Visual Studio中编译?

MudBlazor Textfield已禁用,但其验证工作正常

未显示详细信息的弹出对话框

使用Blazor WebAssembly提高初始页面加载时间的性能

忽略Visual Studio代码中的StyleCop规则

C#中使用ReadOnlySpan的泛型类型推理

如何在C# WinForm控件中使用Windows 10/11的黑暗主题?

Cmd中的&ping.end()";有时会失败,而";ping";总是有效

避免在特定区域中设置Visual Studio代码的自动格式

Windows 10上埃及标准时间的时区偏移不正确

XmlSerializer在遇到XML属性(命名空间)时崩溃