Hallo,
ich habe folgendes Problem, ich möchte via VisualState.Trigger und VisualState.Setter, das Style Property setzen und zwar von Style selbst.
Geht das überhaupt ?
Meine Idee war:
Setter Target="this.Style" Value="{StaticResource PART_DesktopStyle}" />
aber leider wird "this" nicht erkannt.
<Style TargetType="controls:jb24NavigationShell">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="controls:jb24NavigationShell">
<Grid x:Name="PART_LayoutRoot" >
<Grid x:Name="PART_TitleGrid" Background="{ThemeResource jb24AccentBrush}" Visibility="Visible" VerticalAlignment="Top">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="DeviceStates">
<VisualState x:Name="PART_Desktop">
<VisualState.StateTriggers>
<triggers:DeviceTrigger DeviceFamily="Desktop" />
<triggers:DeviceTrigger DeviceFamily="IoT" />
<triggers:DeviceTrigger DeviceFamily="SurfaceHub" />
<triggers:DeviceTrigger DeviceFamily="Other" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="this.Style" Value="{StaticResource PART_DesktopStyle}" />
</VisualState.Setters>
</VisualState>
<VisualState x:Name="PART_Tablet">
<VisualState.StateTriggers>
<triggers:DeviceTrigger DeviceFamily="TabletLandscape" />
<triggers:DeviceTrigger DeviceFamily="TabletPortrait" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="this.Style" Value="{StaticResource PART_DesktopStyle}" />
</VisualState.Setters>
</VisualState>
<VisualState x:Name="PART_Mobile">
<VisualState.StateTriggers>
<triggers:DeviceTrigger DeviceFamily="PhoneLandscape" />
<triggers:DeviceTrigger DeviceFamily="PhonePortrait" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="this.Style" Value="{StaticResource PART_DesktopStyle}" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</Grid>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
[