NavigationThemeTransition 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供頁面導覽動畫。
public ref class NavigationThemeTransition sealed : Transition
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="DefaultNavigationTransitionInfo")]
class NavigationThemeTransition final : Transition
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="DefaultNavigationTransitionInfo")]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class NavigationThemeTransition final : Transition
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="DefaultNavigationTransitionInfo")]
public sealed class NavigationThemeTransition : Transition
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="DefaultNavigationTransitionInfo")]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class NavigationThemeTransition : Transition
Public NotInheritable Class NavigationThemeTransition
Inherits Transition
<NavigationThemeTransition .../>
- 繼承
- 屬性
Windows 需求
裝置系列 |
Windows 10 (已於 10.0.10240.0 引進)
|
API contract |
Windows.Foundation.UniversalApiContract (已於 v1.0 引進)
|
範例
備註
使用 Windows 10 1803 版時,Frame 預設會使用NavigationThemeTransition在頁面之間以動畫顯示流覽。
當您的應用程式在 Frame中的不同內容片段之間巡覽時,您可以使用 NavigationThemeTransition 來新增動畫轉換。 您可以將 NavigationThemeTransition 新增至要巡覽之Page的Transitions集合,或導覽Frame的ContentTransitions集合。 一般而言,我們建議您使用框架的 ContentTransitions 屬性,以確保所有流覽頁面都會發生轉換。
此範例顯示 NavigationThemeTransition 已新增至Frame的ContentTransitions集合。
<Frame ...>
<Frame.ContentTransitions>
<TransitionCollection>
<NavigationThemeTransition/>
</TransitionCollection>
</Frame.ContentTransitions>
...
</Frame>
var frame = new Frame();
frame.ContentTransitions = new TransitionCollection();
frame.ContentTransitions.Add(new NavigationThemeTransition());
在Windows 10中,會提供兩個不同的動畫,以在應用程式中的頁面之間流覽。 導覽動畫是由 NavigationTransitionInfo的子類別表示。
- 頁面重新整理:頁面重新整理是頁面導覽的預設動畫。 它是 投影片向上 動畫和傳入內容的 淡 入動畫的組合。 當您使用最上層導覽時,您應該使用頁面重新整理,例如流覽功能表。
頁面重新整理動畫是由 EntranceNavigationTransitionInfo 類別表示。 您可以使用 EntranceNavigationTransitionInfo.IsTargetElement 附加屬性,將頁面重新整理動作套用至頁面的子集;例如,排除頁面命令 UI 的所有內容。
- 鑽研:當使用者與代表另一個頁面連結的 UI 互動時,您應該使用動畫中的鑽研。 例如,在代表相簿清單的頁面中,當使用者按一下相簿專案時,應該會有轉換到相簿頁面的鑽研。
動畫中的鑽研是由 DrillInNavigationTransitionInfo 類別表示。
根據預設,NavigationThemeTransition 會播放頁面重新整理動畫。 不過,您可以藉由設定 NavigationThemeTransition 的 DefaultNavigationTransitionInfo 屬性來覆寫此行為。 此屬性的 NavigationTransitionInfo 值預設會用於所有導覽。
您可以使用採用 3 個參數的 Frame.Navigate 多載,指定要用於特定流覽的動畫。
在此範例中,當使用者從相簿清單「鑽研」到代表特定相簿的頁面時,音樂流覽應用程式會要求動畫中的鑽研。
void AlbumsListView_ItemClick(object sender, ItemClickEventArgs e)
{
// Get albumId from clicked item...
Frame.Navigate(typeof(AlbumPage), albumId, new DrillInNavigationTransitionInfo());
}
此外,您可以使用 Frame.GoBack (NavigationTransitionInfo) 在 返回框架 堆疊中流覽時播放特定的轉換。 當您根據螢幕大小動態修改瀏覽行為,例如在回應式主要/詳細案例中,這個做法是非常實用的。 如需更多範例,請參閱 XAML 主要/詳細資料範例。
SuppressNavigationTransitionInfo
當您想要避免在流覽期間播放任何動畫時,可以使用 SuppressNavigationTransitionInfo 取代其他 NavigationTransitionInfo 子類型。
// Navigate to your first page without a transition
Frame.Navigate(typeof(MainPage), null, new SuppressNavigationTransitionInfo());
建構函式
NavigationThemeTransition() |
初始化 NavigationThemeTransition 類別的新實例。 |
屬性
DefaultNavigationTransitionInfo |
取得或設定在頁面之間巡覽時所使用的預設轉換。 |
DefaultNavigationTransitionInfoProperty |
識別 DefaultNavigationTransitionInfo 相依性屬性。 |
Dispatcher |
取得這個 物件相關聯的 CoreDispatcher 。 CoreDispatcher代表可在 UI 執行緒上存取DependencyObject的功能,即使程式碼是由非 UI 執行緒起始也一樣。 (繼承來源 DependencyObject) |
方法
ClearValue(DependencyProperty) |
清除相依性屬性的本機值。 (繼承來源 DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
傳回為相依性屬性建立的任何基底值,如果動畫未使用中,則適用此屬性。 (繼承來源 DependencyObject) |
GetValue(DependencyProperty) |
從 DependencyObject傳回相依性屬性的目前有效值。 (繼承來源 DependencyObject) |
ReadLocalValue(DependencyProperty) |
如果已設定本機值,則傳回相依性屬性的本機值。 (繼承來源 DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
註冊通知函式,以接聽此DependencyObject實例上特定DependencyProperty的變更。 (繼承來源 DependencyObject) |
SetValue(DependencyProperty, Object) |
設定 DependencyObject上相依性屬性的本機值。 (繼承來源 DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
取消先前透過呼叫 RegisterPropertyChangedCallback註冊的變更通知。 (繼承來源 DependencyObject) |