cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
rguggisberg
Level 13

Refresh Screen

Hi,

In one of the dialogs in my Basic MSI project I have a checkbox that runs a CA when it is clicked. That CA sets 2 properties. I want to display the values of those properties immediately when the checkbox is checked. Currently I have to leave the dialog and come back to see the refreshed values. The following post makes it sound like this is possible, but I can't get it to work.

https://community.flexera.com/t5/InstallShield-Knowledge-Base/Refreshing-Dialog-Controls-in-Windows-Installer-3-1-and-Newer/ta-p/4420

Can anyone post an example or provide some clarification. The article uses the term "Control" when there are 2 controls (1 for the checkbox and another for the field to be updated). It is not clear which one is which when the article uses the term "Control' for both.

Thanks

Labels (1)
0 Kudos
(5) Replies
Revenera_Ian
Revenera Moderator Revenera Moderator
Revenera Moderator

Hi @rguggisberg,

Thank you for your post.

I gave the steps in the documentation that you linked to a quick try, but I didn't see a way to specify SetProperty, even by typing it out, for a Subscription for the Text Area control that I specified to display TESTPROPERTY1.

This is a known limitation of Windows Installer (MSI). To the best of my knowledge, the only way to get an MSI dialog refresh behavior is to clone the affected dialog and use a twin-dialog method, where clicking on a button of one dialog displays the twin dialog. Please give this a try. Does it work for you?

Please let us know if you have any questions or concerns. Thanks!

0 Kudos

Thanks for your reply Ian. I considered doing that... but wanted to avoid potential trouble if someone else modifies this in the future. I found a simple solution.

Recall that in one of the dialogs in my Basic MSI project I have a checkbox that runs a CA when it is clicked. That CA sets 2 properties. I want to display the values of those properties immediately when the checkbox is checked. Currently I have to leave the dialog and come back to see the refreshed values.  All I had to do to make this work is this:

- The fields I want to refresh are Edit Fields for MyProperty1 and MyProperty2.

- In my Checkbox control I execute the CA

- Set Property MyProperty1 = [MyProperty1]

- Set Property MyProperty2 = [MyProperty2]

The fields get updated without leaving the dialog 🙂

Thanks again for the push that got me thinking.

0 Kudos

Thank you for your reply.

Sounds good ðŸ™‚

You're welcome; we're happy to help.

Could you please clarify these two items?

- Set Property MyProperty1 = [MyProperty1]

- Set Property MyProperty2 = [MyProperty2]

What did you configure to trigger the refresh of the two Edit Fields? I didn't quite follow.

Please let us know if you have any questions or concerns. Thanks!

0 Kudos

Yes, I guess I am paraphrasing... Add these events on the Checkbox Control after running the Action.

SetProperty 1

Property MyProperty1

Value [MyProperty1]

 

SetProperty 2

Property MyProperty2

Value [MyProperty2]

 

 

0 Kudos

Got it. Thanks, @rguggisberg🙂

0 Kudos