2012-10-15 19 views

Odpowiedz

8

Jeśli używasz pustej strony (lub pustego projektu), twoja klasa odziedziczy po Windows.UI.Xaml.Controls.Page, która nie powoduje automatycznego zarządzania stanem wizualnym, a Ty nie zobaczysz wszelkie VisualStates w XAML.

Jeśli utworzysz jeden z pozostałych typów stron, klasa stron rozszerzy LayoutAwarePage, która będzie zawierała instalacje do pracy z różnymi stanami wizualnymi, a stany wizualne zostaną zaszczepione w XAML. Można ręcznie dodać następujące XAML do istniejącej strony, aby uzyskać funkcjonalność projektu, ale nadal będziesz musiał zarządzać przełączniki do stanu, gdy zmiany orientacji (coś, co LayoutAwarePage robi dla ciebie)

 <VisualStateManager.VisualStateGroups> 
      <VisualStateGroup x:Name="ApplicationViewStates"> 
      <VisualState x:Name="FullScreenLandscapeOrWide"/> 
      <VisualState x:Name="FilledOrNarrow" /> 
      <VisualState x:Name="FullScreenPortrait" /> 
      <VisualState x:Name="FullScreenPortrait_Detail" /> 
      <VisualState x:Name="Snapped" /> 
      <VisualState x:Name="Snapped_Detail" /> 
      </VisualStateGroup> 
     </VisualStateManager.VisualStateGroups> 
+0

Znakomity, dzięki za pomoc, myślę, że pójdę drogą konwersji projektu, aby działał na LayoutAwarePage. Wydaje się to znacznie prostsze. Dzięki jeszcze raz. – Runewake2

+0

Jednak nawet jeśli to zrobię i skonwertuję, opcja Włącz rejestrację stanu jest wyłączona. Co więcej, udało mi się znaleźć samouczek Microsoftu używający Visual States i nie mogłem również uzyskać stanu nagrywania. [tutorial: http://code.msdn.microsoft.com/windowsapps/Snap-Sample-2dc21ee3] – Runewake2

+0

spróbuj tego, aby upewnić się, że sama funkcja nie jest "zepsuta" - utwórz zupełnie nowy projekt w nowym rozwiązaniu za pomocą siatki Szablon aplikacji. Czy włącza się rejestrowanie stanu na GroupDetailPage.xaml? –

Powiązane problemy