我制作了一个具有参数的自定义组件。如果未设置参数,我已经重写OnParametersSet
了引发异常的方法,但是我需要确保参数使用两种方式绑定。如果将其设置为MyParameter="somevalue"
不会引发异常并且不会触发我的事件回调(我定义了 MyParameterChanged 事件回调)。有没有办法确保设置此参数,@bind-MyParameter="somevalue"
以便子组件通知父组件的更改?我知道还有其他方法,例如 CascadingParameters(将其耦合到模型)或自定义事件回调(然后父页面必须传递 EvenCallback 方法)
//parent
<mycustomcomponent @bind-MyParameter="parentModel.property" />
//child
<div><div/>
public List<string> MyParameter {get;set;}
[Parameter] public EventCallback<List<string>> MyParameterChanged { get; set; }
protected override void OnParametersSet()
{
base.OnParametersSet();
if (myproperty is null)
throw new ArgumentException("The 'MyParameter' property is not set", nameof(MyParameter));
}
// some methods to modify MyParameter