To skip dialogs you will need to modify the wxs files for the dialogs around your dialog. You need to add click events to the next and back buttons to handle the different paths based on the selected features.


<Publish Event=“NewDialog”
Value=“[WixUI_CustomizeDlg_NextMyFeatureDlg]”>
<![CDATA[&FeatureID = 3 AND !FeatureID <> 3]]>
</Publish>

You will also have to modify the WixUI_FeatureTree.wxs file to handle the newly created events. The default files can be copied from the WIX source.

One thing to note is the odd syntax for getting the state properities of objects.
&FeatureId is like FeatureId.ActionState
!FeatureId is like FeatureId.InstalledState

Inside the dialog…


<Control Id=“Next” Type=“PushButton”
X=“236” Y=“243” Width=“56” Height=“17”
Default=“yes” Text=“$(loc.WixUINext)”>
<Publish Event=“NewDialog”
Value=“[WixUI_CustomizeDlg_NextMyFeatureDlg]”>
<![CDATA[&FeatureID = 3 AND !FeatureID <> 3]]>
</Publish>
<Publish Event=“NewDialog”
Value=“[WixUI_CustomizeDlg_Next]”>
<![CDATA[NOT (&FeatureID = 3 AND !FeatureID <> 3)]]>
</Publish>

</Control>

References:
Wix Tutorial