From e9aec9540fac82896bd06424b2ab6d68f3fb0856 Mon Sep 17 00:00:00 2001 From: sven-n Date: Wed, 15 Jul 2026 21:51:36 +0200 Subject: [PATCH] Merge pull request #830 from valentinoConti/fix/modals-crashing-app Fix modals making app crash (cherry picked from commit 55ac67312448f4d851c44a1c77734703c9b1d3dd) --- src/Web/Shared/Components/Modal/ModalContainer.razor | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/Web/Shared/Components/Modal/ModalContainer.razor b/src/Web/Shared/Components/Modal/ModalContainer.razor index e153d3e..b5f8c28 100644 --- a/src/Web/Shared/Components/Modal/ModalContainer.razor +++ b/src/Web/Shared/Components/Modal/ModalContainer.razor @@ -82,7 +82,15 @@ if (this.ModalService.Current is { } current) { - result["Modal"] = current.Instance; + // Only supply the Modal instance to content components that actually declare + // a matching parameter (e.g. ModalQuestion). Passing it to a component that + // doesn't - like the plain ModalMessage - makes Blazor throw "does not have a + // property matching the name 'Modal'". This keeps simple modals boilerplate-free. + var modalProperty = current.ComponentType.GetProperty("Modal"); + if (modalProperty is not null && modalProperty.PropertyType.IsAssignableFrom(typeof(ModalInstance))) + { + result["Modal"] = current.Instance; + } } return result; }