From 05ea47f42c51b105d50b055f911efa2c76ab8537 Mon Sep 17 00:00:00 2001 From: OlgunR Date: Thu, 5 Feb 2026 11:21:49 +0100 Subject: [PATCH] Improve title field validation feedback in catalog edit form Title field now validates on input, not just on blur. Added OnTitleChanged handler to clear validation messages for CatTitle as the user types. OnFieldChanged now only clears messages for UpdateProcedure. This enhances real-time validation feedback for users. --- .../Components/CatalogsGrid.razor | 20 ++++++++++++++++--- .../Components/CatalogsGrid.razor | 20 ++++++++++++++++--- 2 files changed, 34 insertions(+), 6 deletions(-) diff --git a/DbFirst.BlazorWasm/Components/CatalogsGrid.razor b/DbFirst.BlazorWasm/Components/CatalogsGrid.razor index 3d9149f..25b9a0a 100644 --- a/DbFirst.BlazorWasm/Components/CatalogsGrid.razor +++ b/DbFirst.BlazorWasm/Components/CatalogsGrid.razor @@ -95,7 +95,10 @@ else @{ SetEditContext(editFormContext.EditContext); var editModel = (CatalogEditModel)editFormContext.EditModel; } - + @@ -161,14 +164,25 @@ else return; } - if (e.FieldIdentifier.FieldName == nameof(CatalogEditModel.UpdateProcedure) || - e.FieldIdentifier.FieldName == nameof(CatalogEditModel.CatTitle)) + if (e.FieldIdentifier.FieldName == nameof(CatalogEditModel.UpdateProcedure)) { validationMessageStore.Clear(); editContext.NotifyValidationStateChanged(); } } + private void OnTitleChanged() + { + if (validationMessageStore == null || editContext == null) + { + return; + } + + var field = new FieldIdentifier(editContext.Model, nameof(CatalogEditModel.CatTitle)); + validationMessageStore.Clear(field); + editContext.NotifyValidationStateChanged(); + } + private void OnCustomizeEditModel(GridCustomizeEditModelEventArgs e) { if (e.IsNew) diff --git a/DbFirst.BlazorWebApp/Components/CatalogsGrid.razor b/DbFirst.BlazorWebApp/Components/CatalogsGrid.razor index 999a8cc..e59fd81 100644 --- a/DbFirst.BlazorWebApp/Components/CatalogsGrid.razor +++ b/DbFirst.BlazorWebApp/Components/CatalogsGrid.razor @@ -54,7 +54,10 @@ else @{ SetEditContext(editFormContext.EditContext); var editModel = (CatalogEditModel)editFormContext.EditModel; } - + @@ -120,14 +123,25 @@ else return; } - if (e.FieldIdentifier.FieldName == nameof(CatalogEditModel.UpdateProcedure) || - e.FieldIdentifier.FieldName == nameof(CatalogEditModel.CatTitle)) + if (e.FieldIdentifier.FieldName == nameof(CatalogEditModel.UpdateProcedure)) { validationMessageStore.Clear(); editContext.NotifyValidationStateChanged(); } } + private void OnTitleChanged() + { + if (validationMessageStore == null || editContext == null) + { + return; + } + + var field = new FieldIdentifier(editContext.Model, nameof(CatalogEditModel.CatTitle)); + validationMessageStore.Clear(field); + editContext.NotifyValidationStateChanged(); + } + private void OnCustomizeEditModel(GridCustomizeEditModelEventArgs e) { if (e.IsNew)