自定义Blazor选择选项-不从绑定值中选择初始项



在创建自定义组件时,我想用自定义Option组件扩展Select,这样我就可以添加额外的参数等。

简化版:

<option value="@value">@ChildContent</option>   
@code {
[Parameter] public RenderFragment ChildContent { get; set; }
[Parameter] public string value { get; set; }
}

我使用该组件的方式与选项标记完全相同,在html方面,代码呈现完全相同。

这一切看起来都很好,但没有进行初始绑定。例如,顶部选项总是被选中,但只是可见的-值是空字符串。

您只需要创建自定义剃须刀组件->CustomOption.razor即可使用此类内容

<option value="@value" class="@specAttribute">@ChildContent</option>
@code {
[Parameter] public RenderFragment ChildContent { get; set; }
[Parameter] public string value { get; set; }
[Parameter] public string specAttribute { get; set; }
}

然后使用它:

<InputSelect  @bind-Value="@language">
<CustomOption value="English" specAttribute="list-item">English</CustomOption>
<CustomOption value="Spanish" specAttribute="list-item">Spanish</CustomOption>
</InputSelect>

经过进一步调查,这已被确定为一个错误。

GitHub dotnet/aspnetcore:上两个问题的链接

在相同的diff期间动态插入的元素不会自动选择#21453

Blazor:动态未设置选定值#21432

相关内容

  • 没有找到相关文章

最新更新