2013-04-17 2 views
0

나는 함유량 ContentControl을 내보기에 변수ContentControl을 VisualStateManager

<ContentControl x:Name="MyContentControl" Content="{Binding MyContent}" /> 

에 결합하는 ContentControl을이 '에서 MainPage.xaml' 나는 버튼을 클릭, 내 ContentControl을의 콘텐츠는 설정 한 새로운보기 (예 : 'FirstPage.xaml'). 그래서 'FirstPage.xaml'콘텐츠가있는 ContentControl이 포함 된 MainPage.xaml을 가지고 있습니다.

문제는 내 MainPage.xaml과 내 FirstPage.xaml에 VisualStateManager를 설정했기 때문입니다.

Xaml-Editor에서 VisualState 'Snapped'를 테스트하면 정상적으로 작동합니다. 문제 -> MainPage.xaml에는 ContentControl = FirstPage.xaml이 포함됩니다. MainPage.xaml이 Snapped이면 MainPage의 VisualState 만 적용되지만 ContentControl은 여전히 ​​동일합니다 (ContentControl에서는 VisualState가 변경되지 않음).

그래서 VisualState를 ContentControl에 적용하려면 어떻게해야합니까?

답변

0

문제가 해결되었습니다. 코드 숨김에 넣어야합니다.

public MainPage() 
    { 
     this.InitializeComponent(); 
     Window.Current.SizeChanged += Current_SizeChanged; 
    } 

    void Current_SizeChanged(object sender, Windows.UI.Core.WindowSizeChangedEventArgs e) 
    { 
     VisualStateManager.GoToState(this, ApplicationView.Value.ToString(), true); 
    }