【问题标题】:How do I set the selected-value of a combo-box in Blazor?如何在 Blazor 中设置组合框的选定值?
【发布时间】:2022-03-03 11:09:32
【问题描述】:

我创建了一个面向 .NET 6.0 的 Blazor 服务器应用。

然后我像这样向默认的 Counter.razor 页面添加一个组合框

<button class="btn btn-primary" @onclick="IncrementCount">Click me</button>

<p>
    <label>
        Select a car:
        <select @onchange="SelectedCarsChanged" >
            <option value="">Select a car</option>
            <option value="audi">Audi</option>
            <option value="jeep">Jeep</option>
            <option value="opel">Opel</option>
            <option value="saab">Saab</option>
            <option value="volvo">Volvo</option>
        </select>
    </label>
</p>

这是添加组合框后的@code 部分。

    private int currentCount = 0;
    private void IncrementCount()
    {
        currentCount++;
    }
    string SelectedCar = "";
    void SelectedCarsChanged(ChangeEventArgs e)
    {
        if (e.Value is not null)
        {
            SelectedCar = (string)e.Value;
        }
    }

用户选择一辆车,然后按下“点击我”按钮。

发生这种情况时,如何在 IncrementCount() 例程中将组合框重置为“选择汽车”?

【问题讨论】:

标签: c# combobox blazor


【解决方案1】:

你快到了,像这样绑定SelectedCar来选择

 <select @bind=@SelectedCar>
            <option value="">Select a car</option>
            <option value="audi">Audi</option>
            <option value="jeep">Jeep</option>
            <option value="opel">Opel</option>
            <option value="saab">Saab</option>
            <option value="volvo">Volvo</option>
        </select>

然后像这样选择 SelectedCar

 private void IncrementCount()
    {
        currentCount++;
        SelectedCar = "";
    }

【讨论】:

  • 否,因为组合框继续显示之前选择的值。
  • 您能否解释一下您之前选择的值是什么意思
  • 我测试了代码,最初它显示“选择汽车”,如果我从选择中选择任何汽车,它会显示选择的汽车,如果我点击点击我按钮选择显示“选择汽车”。是不是如你所愿
  • 你说的完全正确!谢谢!我会将其标记为正确答案,并在允许后立即投票。
猜你喜欢
  • 2011-10-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-04
  • 1970-01-01
相关资源
最近更新 更多