Render the multi-select list¶
Render a drop-down multi-select list backed by a checkbox list. CreateChildControls and DataBind for a MultiListControl instance.
| Field | Value |
|---|---|
| Operation ID | OP-V2-010 |
| Trigger | CreateChildControls and DataBind for a MultiListControl instance. |
| Inputs | IsTextEditable, ListDatasource, TextDatasource, WildCardItem. |
| Outputs | A composite textbox + arrow image button + checkbox list control. |
| Primary components | MultiListControl |
| Entry point | SAIF.Presentation.Web.Controls.V2/MultiListControl.vb |
Steps¶
- On
CreateChildControls, compose a textbox (editable perIsTextEditable), an image button whosesrcis resolved from the embeddedMultiComboArrow.gifweb resource, and a checkbox list. (BR-V2-061, BR-V2-062) - Wire the image button
onclicktoMultiListShow('<id>_<checkListClientId>')and add anonmousedownhandler to the page form callingMultListLostFocus(event)so the list closes when focus is lost. (BR-V2-063) - Register the embedded
MultiList.jsscript include throughPage.ClientScript.GetWebResourceUrl. (BR-V2-064) DataBindbindsListDatasourceto the checkbox list andTextDatasourceto the text display;WildCardItemdesignates the entry that represents "all". (BR-V2-065)
Process flow¶
The following diagram visualizes this operation's control flow.
flowchart TD
Start([CreateChildControls]) --> Compose[Compose textbox + image button + checkbox list]
Compose --> Wire[Wire onclick/onmousedown handlers]
Wire --> Script[Register embedded MultiList.js]
Script --> DataBindS([DataBind])
DataBindS --> Bind[Bind ListDatasource/TextDatasource]
Bind --> Done([Rendered])
Failure and edge-case behavior¶
- No exceptional failure handling beyond the branches described in Steps was found in the analysis findings.*
Related documentation¶
Sources¶
SAIF.Presentation.Web.Controls.V2/MultiListControl.vb