I created a custom Field in /sitecore/system/Field types/User Defined
, called Role Selector
. It inherits from a class called MultilistExBase
(which I have brought into the project thanks to this post) which itself extends Sitecore.Shell.Applications.ContentEditor.MultilistEx
. As soon as I create the field in the Core
, that new field shows up in the list of available fields. But when I go to actually set the field on an instance of said template, it displays a textbox instead of a Multilist
, with no errors. I have tried both defining the Assembly/Class
for the field type and controlPrefix:RoleSelector
with no success. I have also combed through the logs and found nothing as well. This project instance is Sitecore 8.0 (rev. 151127).
1 Answer
After copying /sitecore/system/Field types/List Types/Multilist
from List Type
to the /sitecore/system/Field types/User Defined
and renaming, I went over to Master
, updated the template to the newly copied Multilist
field type. It still did not work, only showing a basic textbox, no error on screen or in the logs. That then led me to check the /sitecore/system/Field types/User Defined
folder, only to find it was not a Common/Folder
template type at all, but instead a /sitecore/templates/System/Node
template type. I then changed the template type in the Configure
tab on User Defined
to Common/Folder
in Core
, went back over to Master
and the field started working immediately. I can only assume at this point that User Defined
item was cast as a Node
due to some template type mismatch when I imported it from an 8.1 Sitecore instance. I am somewhat curious as to why it failed so silently, and why the field type did indeed show up in the list, but the control rendering did not as much as even hit a breakpoint.
Summary: After verifying your custom field is indeed set up correctly (Assembly/Class
or controlPrefix:ControlClass
) and are still having issues with it rendering at all, verify that the parent Folder
type is indeed a Common/Folder
.