@bind 之后的 Blazor 事件
Blazor event after @bind
在 Blazor 页面中,我有一组复选框输入元素绑定到布尔值 属性,代码为
foreach(var item in items)
{
<input type="checkbox" class="checkbox" @bind="@item.IsReady" @onclick="((e)=>ItemIsReady(item))" />
}
我正在寻找一种方法来在 绑定完成后触发函数 ItemIsReady 。目前该函数在绑定完成之前触发。
某种形式的@bind 指令是必要的,因为页面加载项目,加载后需要检查就绪项目。
我无法使用 属性 setter 中的函数。
有人知道怎么做吗?
“我正在寻找一种在绑定完成后触发函数 ItemIsReady 的方法。目前该函数在绑定完成之前触发。”
我假设您想对复选框所做的更改做出反应。也许我错了。
如果您想捕获更新事件,那么您可以:
- 使用绑定并捕获 属性 setter 或
上的事件
- 手动连接输入。
下面的演示页面展示了如何做到这一点:
@page "/Test"
@foreach (var item in model)
{
<div><input type="checkbox" class="checkbox" checked="@item.IsReady" @onchange="((e)=>ItemIsReady(e, item))" /> <span>@item.IsReady</span></div>
}
@code {
List<ModelClass> model { get; set; } = new List<ModelClass> {
new ModelClass(),
new ModelClass() { IsReady=true },
new ModelClass()
};
class ModelClass
{
public bool IsReady { get; set; }
}
void ItemIsReady(ChangeEventArgs e, ModelClass item)
{
item.IsReady = (bool)e.Value;
}
}
在 Blazor 页面中,我有一组复选框输入元素绑定到布尔值 属性,代码为
foreach(var item in items)
{
<input type="checkbox" class="checkbox" @bind="@item.IsReady" @onclick="((e)=>ItemIsReady(item))" />
}
我正在寻找一种方法来在 绑定完成后触发函数 ItemIsReady 。目前该函数在绑定完成之前触发。
某种形式的@bind 指令是必要的,因为页面加载项目,加载后需要检查就绪项目。
我无法使用 属性 setter 中的函数。
有人知道怎么做吗?
“我正在寻找一种在绑定完成后触发函数 ItemIsReady 的方法。目前该函数在绑定完成之前触发。”
我假设您想对复选框所做的更改做出反应。也许我错了。
如果您想捕获更新事件,那么您可以:
- 使用绑定并捕获 属性 setter 或 上的事件
- 手动连接输入。
下面的演示页面展示了如何做到这一点:
@page "/Test"
@foreach (var item in model)
{
<div><input type="checkbox" class="checkbox" checked="@item.IsReady" @onchange="((e)=>ItemIsReady(e, item))" /> <span>@item.IsReady</span></div>
}
@code {
List<ModelClass> model { get; set; } = new List<ModelClass> {
new ModelClass(),
new ModelClass() { IsReady=true },
new ModelClass()
};
class ModelClass
{
public bool IsReady { get; set; }
}
void ItemIsReady(ChangeEventArgs e, ModelClass item)
{
item.IsReady = (bool)e.Value;
}
}