blazor component ValueChanged
<h1>Child Component</h1> Password: <input @oninput="OnPasswordChanged" required type="@(showPassword ? "text" : "password")" value="@Password" /> <button class="btn btn-primary" @onclick="ToggleShowPassword"> Show password </button> <span class="text-danger">@validationMessage</span> @code { private bool showPassword; private string password; private string validationMessage; [Parameter] public string Password { get { return password ?? string.Empty; } set { if (password != value) { if (value.Contains(' ')) { validationMessage = "Spaces not allowed!"; } else { password = value; validationMessage = string.Empty; } } } } [Parameter] public EventCallback<string> PasswordChanged { get; set; } private Task OnPasswordChanged(ChangeEventArgs e) { Password = e.Value.ToString(); return PasswordChanged.InvokeAsync(Password); } private void ToggleShowPassword() { showPassword = !showPassword; } }