Как разрешить взаимоисключающие функции в MSI
У нас есть две особенности,
В
Эти два должны быть выбраны таким образом, как показано ниже 3 сценария.
если A выбран, B должен быть отменен
если выбрано B, то отменить выбор
Пользователь может отменить выбор обеих функций.
Я могу сделать 1 и 2, используя подход ниже.
Создал клон CustomSetup и назвал его CustomSetup1.
А в поведении управления Tree, я добавил ниже событий.
Удалить:
Условие:MsiSelectionTreeSelectedFeature="A" и MsiSelectionTreeSelectedAction="3"
Название функции: B
Удалить:
Условие:MsiSelectionTreeSelectedFeature="B" и MsiSelectionTreeSelectedAction="3"
Название функции: A
Новый диалог:
Условие:MsiSelectionTreeSelectedFeature="A" и MsiSelectionTreeSelectedAction="3"
Имя диалога: CustomSetup1
Аналогично, еще одно с условием:MsiSelectionTreeSelectedFeature="B" и MsiSelectionTreeSelectedAction="3"
А в поведении CustomSetup1 я заменил новый диалог на CustomSetup.
Это работает для 1 и 2 сценариев, как
если я выберу A, B отключится.
Если я выберу B, A отключится.
Но если я откажусь от выбора A или B, они сами не отключатся.
Я имею в виду, что третий сценарий не работает. Я не могу отменить выбор любой из этих функций.