2013-03-30 7 views
1

Я новичок в разработке для Windows Phone 8, и мне было интересно, если я мог бы получить больше информации о том, как использовать этот кусок кода в приложении:Использование инструментария: TransitionService в Windows Phone 8

<toolkit:TransitionService.NavigationInTransition> 
    <toolkit:NavigationInTransition> 
     <toolkit:NavigationInTransition.Backward> 
      <toolkit:TurnstileTransition Mode="BackwardIn"/> 
     </toolkit:NavigationInTransition.Backward> 
     <toolkit:NavigationInTransition.Forward> 
      <toolkit:TurnstileTransition Mode="ForwardIn"/> 
     </toolkit:NavigationInTransition.Forward> 
    </toolkit:NavigationInTransition> 
</toolkit:TransitionService.NavigationInTransition> 
<toolkit:TransitionService.NavigationOutTransition> 
    <toolkit:NavigationOutTransition> 
     <toolkit:NavigationOutTransition.Backward> 
      <toolkit:TurnstileTransition Mode="BackwardOut"/> 
     </toolkit:NavigationOutTransition.Backward> 
     <toolkit:NavigationOutTransition.Forward> 
      <toolkit:TurnstileTransition Mode="ForwardOut"/> 
     </toolkit:NavigationOutTransition.Forward> 
    </toolkit:NavigationOutTransition> 
</toolkit:TransitionService.NavigationOutTransition> 

Я читал некоторые примеры из http://phone.codeplex.com, однако, похоже, он используется только тогда, когда тег использует атрибут NavigateUri.

Итак, мой главный вопрос: выполняется ли этот код при любой навигации по страницам (даже в задней части) или он должен быть реализован в передней части, где находится код?

Спасибо за помощь

ответ

0

Есть страницы: page1, page2.If вы не используете код, который вы размещены в коде XAML всех страниц, переход страницы не происходит.

Если вы используете код в XAML всех страниц:

case a: page1 -> page2. 

<toolkit:NavigationOutTransition.Forward> 
    <toolkit:TurnstileTransition Mode="ForwardOut"/> 
</toolkit:NavigationOutTransition.Forward> 

этот переход происходит в page1.

<toolkit:NavigationInTransition.Forward> 
    <toolkit:TurnstileTransition Mode="ForwardIn"/> 
</toolkit:NavigationInTransition.Forward> 

этот переход происходит на странице2.

case b: page2 -> page1 (back). 

<toolkit:NavigationOutTransition.Backward> 
    <toolkit:TurnstileTransition Mode="BackwardOut"/> 
</toolkit:NavigationOutTransition.Backward> 

этот переход происходит на странице2.

<toolkit:NavigationInTransition.Backward> 
    <toolkit:TurnstileTransition Mode="BackwardIn"/> 
</toolkit:NavigationInTransition.Backward> 

этот переход происходит на странице1.

+0

Да, я понимаю это, но мне просто интересно, если, например, я использовал NavigateService() в бэкэнд страницы, и у меня был код, упомянутый в вопросе на страницах, будет ли он реализовывать эффект перехода? Или это должно быть свойство NavigateUri в файле xaml? – user1186173

+0

Неважно, как вы переходите на указанную страницу. Если для страницы используется анимированный переход, произойдет переход. – Pantelis

3

У меня была та же проблема. Найдено решение here!

Что вам нужно сделать, это перейти на App.xaml.cs и сменить, RootFrame = new PhoneApplicationFrame(); на RootFrame = new TransitionFrame(); в InitializePhoneApplication() метод.

Cheers!