C# Blazor字符串列表输入绑定
我试图显示一个字符串列表,我希望用户能够编辑该列表以对对象进行更改,但当我在修改输入字段后查看该列表时,尚未进行更改 如何绑定字符串列表C# Blazor字符串列表输入绑定,c#,html,blazor,C#,Html,Blazor,我试图显示一个字符串列表,我希望用户能够编辑该列表以对对象进行更改,但当我在修改输入字段后查看该列表时,尚未进行更改 如何绑定字符串列表 @foreach (var message in UserMessageService.GetSomeData()) { <tr> <td><input type="text" bind="@message.Username" value="@message.Username" onblur="S
@foreach (var message in UserMessageService.GetSomeData())
{
<tr>
<td><input type="text" bind="@message.Username" value="@message.Username" onblur="SaveMessages"/></td>
<td><input type="text" bind="@message.Message" value="@message.Message" onblur="SaveMessages"/></td>
</tr>
}
@foreach(UserMessageService.GetSomeData()中的var消息)
{
}
使用正确的Blazor语法:
<input
type="text" @bind="@message.Message"/>
如果需要对模糊执行功能:
<input value="@message.Message"
@onchange="@((ChangeEventArgs __e) =>
{ message.Message = __e.Value.ToString());
SaveMessages(); })" />
更多信息:我犯了一个愚蠢的错误,问题不在于我的语法。我犯了绑定到我的服务而不是本地变量的错误,因此当我离开焦点时,它无法更新,只能从服务中检索 我只是在下面添加了局部变量
@foreach (var message in dataVariable)
{
<tr>
<td><input type="text" @bind="message.Username" /></td>
<td><input type="text" @bind="message.Message" /></td>
</tr>
}
@code {
private List<someData> dataVariable;
protected override void OnInitialized()
{
TableSeats = UserMessageService.GetSomeData();
}
}
@foreach(dataVariable中的var消息)
{
}
@代码{
私有列表数据变量;
受保护的覆盖无效OnInitialized()
{
TableSeats=UserMessageService.GetSomeData();
}
}