@bind
による双方向 DataBinding は以下の通りです。
<input @bind="CurrentValue" /> @code { private string CurrentValue { get; set; } }
Microsoft Docsによると、@bind するタイミング(イベント)は変更できるようです。
@bind 構文を使用して onchange イベントを処理できるだけでなく、イベント・パラメーター(@bind-value:イベント)を使用して@bind-value 属性を指定することにより、他のイベントを使用してプロパティーまたはフィールドをバインドできます。次の例では、oninput イベントの CurrentValue プロパティをバインドします。
以下がそのサンプルです。
@bind-value
は既定ではonchange
イベント時に Binding が走るようですが@bind-value:event
を指定することで発火イベントを変更できます。
<input @bind-value="CurrentValue" @bind-value:event="oninput" /> @code { private string CurrentValue { get; set; } }
おわり
TextBoxへの@bind
はデフォルトだとonchange
なので、TextBoxからフォーカスを外さないとValueへ値が渡りませんが、この方法だとリアルタイムに値を渡せるようになります。