Blazor 中 RadzenDataList 中 RadzenTextBox 的 2 路绑定
Posted
技术标签:
【中文标题】Blazor 中 RadzenDataList 中 RadzenTextBox 的 2 路绑定【英文标题】:2 way binding on RadzenTextBox in a RadzenDataList in Blazor 【发布时间】:2020-06-12 13:28:01 【问题描述】:使用文本框创建可编辑的项目列表。
所以iv'e使用了RadzenDataList
,将它绑定到一个字符串列表。
然后我在模板中使用了RazenTextBox
:
<RadzenDataList Data="@_retrospectiveBoard.WhatWentWell" TItem="string">
<Template Context="item">
<RadzenCard>
<RadzenTextBox @bind-Value="@item"/>
</RadzenCard>
</Template>
</RadzenDataList>
RadzenCard
只是为了好看
但是,我得到了一个文本框列表,但是每当我将焦点更改为另一个文本框时,内容都会重置。 所以 2 路绑定没有按预期工作。
这甚至可能吗?我可以两种方式绑定到模板的上下文,还是必须拦截文本框事件并更新其中的数据?
【问题讨论】:
【参考方案1】:当我反思这个问题时,我认为字符串可能不起作用,因为从技术上讲,字符串不能被修改,因为它是不可变的。 所以我已经将字符串包装到一个包含字符串的对象中,然后我们开始了!:
<RadzenDataList Data="@_retrospectiveBoard.WhatWentWell" TItem="RetrospectiveDataItem">
<Template Context="item">
<RadzenTextBox @bind-Value="@item.Text"/>
</Template>
</RadzenDataList>
【讨论】:
以上是关于Blazor 中 RadzenDataList 中 RadzenTextBox 的 2 路绑定的主要内容,如果未能解决你的问题,请参考以下文章