It seems a selection factory parameter can be set through the ClientEditor attribute.
So, instead of adding a SelectOne or SelectMany attribute, I used the following to get the selection factory's options injected into my custom editor:
[ClientEditor(ClientEditingClass = "my.custom.Editor", SelectionFactoryType = typeof(MySelectionFactory))]
Not sure how I missed that. :/
Here's what I'm trying to achieve:
I have a ContentArea property. Instead of adding blocks to the content area using the default editor, I want to render a list of checkboxes where each checkbox corresponds to a block on the site.
Checking a checkbox should be equivalent to adding the corresponding block to the content area.
The UI should be something like this:
[ ] Block 1
[ ] Block 2
[x] Block 3
[ ] Block 4
This should have the same effect as if "Block 3" had been added to the content area using the default editor.
To achieve this I've added both a SelectMany attribute and a ClientEditor attribute to my ContentArea property.
However, it seems the ClientEditingClass of the ClientEditor attribute is ignored, and Episerver instead renders the default checkbox list editor for properties decorated with SelectMany.
Needless to say, this won't work. :)
So, in short my question is: how to use a custom Dojo editor for a property decorated with SelectOne or SelectMany?