Appearance
Event Callbacks
Event callbacks allow components to communicate events back to their parent components, enabling two-way communication.
Basic Event Callbacks
razor
@* ChildComponent.razor *@
<button @onclick="OnClick">Click Me</button>
@code {
[Parameter]
public EventCallback OnClick { get; set; }
}
Callbacks with Parameters
razor
@* DataComponent.razor *@
<button @onclick="@(() => OnValueChanged.InvokeAsync(value))">
Update Value
</button>
@code {
[Parameter]
public EventCallback<string> OnValueChanged { get; set; }
}
Using Event Callbacks
In Parent Component
razor
<ChildComponent OnClick="HandleClick" />
<DataComponent OnValueChanged="HandleValueChanged" />
@code {
private void HandleClick()
{
// Handle the click event
}
private void HandleValueChanged(string newValue)
{
// Handle the value change
}
}
Best Practices
- Use EventCallback instead of Action/Func
- Avoid synchronous callbacks
- Handle null callbacks safely
- Use meaningful callback names
- Document expected callback behavior