--- a/Plugins/NoesisGUI/Source/NoesisRuntime/Private/NoesisTypeClass.cpp
+++ b/Plugins/NoesisGUI/Source/NoesisRuntime/Private/NoesisTypeClass.cpp
@@ -3141,6 +3141,42 @@
 						{
 							TypeClass->AddFieldNotification(FieldId, FName(PropertyId.Str()));
 						}
+						else
+						{
+							FProperty* BackingProperty = nullptr;
+							for (TFieldIterator<FProperty> BackingIt(Class, EFieldIteratorFlags::ExcludeSuper); BackingIt; ++BackingIt)
+							{
+								FProperty* Candidate = *BackingIt;
+#if WITH_EDITORONLY_DATA
+								const FString* GetterMeta = Candidate->FindMetaData(TEXT("Getter"));
+								if (GetterMeta != nullptr && *GetterMeta == FunctionName)
+								{
+									BackingProperty = Candidate;
+									break;
+								}
+#endif
+								const FString CandidateName = Candidate->GetName();
+								if (CandidateName == FString(PropertyId.Str()) || CandidateName == FString(TEXT("b")) + FString(PropertyId.Str()))
+								{
+									BackingProperty = Candidate;
+								}
+							}
+							if (BackingProperty != nullptr)
+							{
+								auto BackingFieldId = Descriptor.GetField(Class, BackingProperty->GetFName());
+								if (BackingFieldId.IsValid())
+								{
+									TypeClass->AddFieldNotification(BackingFieldId, FName(PropertyId.Str()));
+								}
+							}
+						}
 					}
 				}
 			}