How to get the FPropertyNode of a property from its IPropertyHandle?

I’ve got a details customization. As a part of its functionality, it can be read-only, using the IDetailsView read only delegate. This works great unless you use a custom widget. If you do, there appears to be no way to get whether the property is currently read-only. That’s set by IDetailsView in the FPropertyNode, and the node doesn’t appear to be accessible in the customization.

There is one way to get a FPropertyNode, but it’s gross and doesn’t compile anyway:

	FPropertyHandleBase *ftHandle = static_cast<FPropertyHandleBase*>(FractureTypeHandle.Get());

	bool bReadOnly = ftHandle->GetPropertyNode()->HasNodeFlags(EPropertyNodeFlags::IsReadOnly);

Since I can’t include the FPropertyHandleBase file, since it’s private to the property editor, I can’t even do this horrible hack.

So, I have no way to disable my custom widget in response to it being marked as read only. What’s the proper way to do this?

I don’t know much about it, but did you try
StructPropertyHandle->GetProperty()->CanEditChange()