Ask user for one or more choices¶
This custom action displays a dialog box allowing end users to select one or more options (check boxes). It is useful for scenarios like deciding whether to install specific components (see components) or configuring conditional workflows using if/then/else actions.
Properties¶
Property Name | Data Type | Description |
---|---|---|
Caption | String | The title displayed on the dialog box or in the wizard's instruction panel. |
Choice1Title | String | The text displayed next to the first check box. |
Choice1Variable | VarName | Variable storing the result of choice 1, e.g., %INSTALLIT%. |
Choice1Visible | Boolean | Determines whether the first check box is visible. |
Choice2Title | String | The text displayed next to the second check box. |
Choice2Variable | VarName | Variable storing the result of choice 2, e.g., %INSTALLIT%. |
Choice2Visible | Boolean | Determines whether the second check box is visible. |
Choice3Title | String | The text displayed next to the third check box. |
Choice3Variable | VarName | Variable storing the result of choice 3, e.g., %INSTALLIT%. |
Choice3Visible | Boolean | Determines whether the third check box is visible. |
LabelText | String | Additional text displayed near the check boxes. |
PromptText | String | The question displayed as the dialog's title, asking users for input. |
Behavior¶
- The dialog displays all check boxes with the Visible property set to
True
. - Check boxes are initially checked if their corresponding variables (e.g., Choice1Variable) are set to 1; otherwise, they are unchecked.
- When users press OK or Next, the package updates each variable with the user's selection:
- Checked: Variable value is set to 1.
- Unchecked: Variable value is set to 0.
- Pressing Cancel closes the package.
Example¶
Properties for the screenshot below:
Additional Notes¶
- You can use a goto label statement to validate user input and branch workflows accordingly. See this example.
- View all available custom actions.