A hierarchical list control with multiple selectable values.
It is not recommended to use the control in multirow since it will give a bad user experience.
It is not recommended to have more than a few hundred items in the list, since it will lead to bad user experience and slow performance. Use multi-picker instead which allows the user to see all selected nodes and fetch only the expanded nodes.
The user may select multiple nodes at once by shift-clicking the checkboxes.
The user may navigate within the control using the arrow keys, and space for selection.
Retrieves the default value for the control.
This call is only made if there is a field validation set for the field info and the field has any content.
Performs field validation when the user leaves the field or one of its dependencies is changed, initial values set by default value and initial values in edit-mode are not validated.
When saving the validation runs server side if the field value has changed. A field value is considered changed if in new mode the value is anything other than
NULL. In edit mode it is considered changed if it has a value that was not returned by the GetEditFields procedure.
CREATE PROCEDURE Example.Item_CheckboxTree AS BEGIN SELECT CONCAT('C', C.CategoryId) AS Id, C.CategoryName AS Label, CONVERT(varchar(30), NULL) AS ParentId FROM Example.Category C UNION ALL SELECT CONCAT('I', I.ItemId) AS Id, I.ItemName AS Label, CONCAT('C', I.CategoryId) AS ParentId FROM Example.Item I ORDER BY Label; END;