2015-05-29 13 views
6

Obserwowałem sesję "Od małego ekranu do dużego ekranu: Budowanie uniwersalnych aplikacji Windows z doświadczeniem z XAML" ze zdarzenia BUILD. http://channel9.msdn.com/Events/Build/2015/2-679VisualState AdaptiveTrigger nie wypalając

Chciałbym wypróbować AdaptiveTrigger, ale nie uruchamia się przy użyciu minimalnej aplikacji Windows 10 UWP.

<VisualStateManager.VisualStateGroups> 
    <VisualStateGroup x:Name="WindowSizeStates"> 
     <VisualState x:Name="WideState"> 
      <VisualState.StateTriggers> 
       <AdaptiveTrigger MinWindowWidth="800"/> 
      </VisualState.StateTriggers> 
      <VisualState.Setters> 
       <Setter Target="rect.Fill" Value="Beige" /> 
      </VisualState.Setters> 
     </VisualState> 
     <VisualState x:Name="NarrowState"> 
      <VisualState.StateTriggers> 
       <AdaptiveTrigger MinWindowWidth="0" /> 
      </VisualState.StateTriggers> 
      <VisualState.Setters> 
       <Setter Target="rect.Fill" Value="White" /> 
      </VisualState.Setters> 
     </VisualState> 
    </VisualStateGroup> 
</VisualStateManager.VisualStateGroups> 
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 
    <RelativePanel> 
     <Rectangle x:Name="rect" Width="100" Height="100" RelativePanel.AlignTopWithPanel="True" Fill="Beige"/> 
    </RelativePanel> 
</Grid> 

Ale nic się nie dzieje. Wygląda na to, że spust nie jest zwalniany. Przegapiłem coś?

Pozdrawiam!

Odpowiedz

15

Tak się dzieje, gdy umieści się grupy na stronie zamiast w pierwszej kontrolce. Spróbować umieścić wewnątrz:

<Grid...> 
    <VisualStateManager.VisualStateGroups> 

</Grid> 

Poza jeśli chcesz mieć bardziej złożone adaptacyjne wyzwalacze Zrobiłem artykuł tutaj: codeproject advanced view states

+0

Dzięki, to działa :) próbowałem umieścić VisualStateManager do RelativePanel przed którym didn To też działa. – SeBo

+0

Zauważyłem, że podczas ostatnich lub trzech wydań VS2017 moje AdaptiveTriggers nie działają poprawnie, ale tylko podczas debugowania. Jeśli uruchomię aplikację z VS, nie będą działać, jeśli zacznę normalnie, klikając aplikację z kafelka, który robią. :(Jestem na VS2017 15.5.4. Ktoś jeszcze? –