Hi Matthew,
If this is still an issue, one option could be to create a new ContentReference property with a similar name as the old property on the PageHeader tab for this. Then look to remove the old property so all references in code and in the CMS link to the new property.
There's nothing broken with the property itself - simply moving it to a new groupname, which we chose as "Layout", put it down in a tab that allowed edits to work.
This is specifically a problem with the CMS editor, but I've not verified if that has been fixed as we won't be returning these properties to PageHeader.
Which version of CMS do you have? It works just fine in 12.16.0
[Display(
Name = "Contact",
GroupName = SystemTabNames.PageHeader,
Order = 20)]
[AllowedTypes(AllowedTypes = new[] { typeof(ContactBlockType) })]
[CultureSpecific(true)]
public virtual ContentReference ContactTest { get; set; }
Screen recording of dropping a block in the property shown in code above. It is still present after a reload and is saved to the DB.
I have also verified so the property can be replaced, removed or changed.
It seems it was a problem in CMS 12.13. Just tested in 12.15.1, and it appears to be working properly now.
In CMS 11, we used a ContentRefernce as a PageHeader property. After upgrading to CMS 12, we found that we could attempt to change the value, but the new value would not be saved.
Changing the GroupName fixes the issue, but of course moves the location of the property