Frame.Navigate 方法

定義

多載

Navigate(TypeName)

導致 Frame 載入由指定 之 Page衍生資料類型所代表的內容。

Navigate(TypeName, Object)

導致 Frame 載入由指定 之 Page衍生資料類型所代表的內容,也會傳遞由導覽目標解譯的參數。

Navigate(TypeName, Object, NavigationTransitionInfo)

導致 Frame 載入由指定 之 Page衍生資料類型所代表的內容,也會傳遞由導覽目標解譯的參數,以及指出要使用的動畫轉換的值。

Navigate(TypeName)

導致 Frame 載入由指定 之 Page衍生資料類型所代表的內容。

public:
 virtual bool Navigate(TypeName sourcePageType) = Navigate;
bool Navigate(TypeName const& sourcePageType);
public bool Navigate(System.Type sourcePageType);
function navigate(sourcePageType)
Public Function Navigate (sourcePageType As Type) As Boolean

參數

sourcePageType
TypeName Type

要巡覽至的頁面,指定為其部分類別型別的型別參考。 必須是 頁面衍生的資料類型;否則會擲回例外狀況。 (類型參考會指定為 System.Type for Microsoft .NET,或 Visual C++ 元件延伸模組的 TypeName 協助程式結構, (C++/CX) ) 。

傳回

Boolean

bool

如果NavigationFailed事件處理常式已將Handled設定為true,則為false;否則為true。 如需詳細資訊,請參閱。

實作

M:Windows.UI.Xaml.Controls.INavigate.Navigate(Windows.UI.Xaml.Interop.TypeName) M:Windows.UI.Xaml.Controls.INavigate.Navigate(System.Type)

備註

您可以處理 NavigationFailed 事件,以回應流覽失敗。 您可以直接在事件處理常式中處理失敗,也可以將 NavigationFailedEventArgs.Handled 屬性設定為 true ,並使用 Navigate 方法傳回值來回應失敗。

應用程式通常會使用 GetNavigationState ,在應用程式暫停時序列化畫面的狀態。 您可以在應用程式程式碼中直接執行此動作,或使用 Visual Studio 範本所產生的類別間接 SuspensionManager 執行此動作。 若要使用 GetNavigationState啟用框架狀態序列化,您必須只針對導覽參數使用基本類型,例如字串、char、numeric 和 GUID 類型。 否則,當應用程式暫停時 ,GetNavigationState 會擲回例外狀況。 如果您不使用 GetNavigationState,參數可以有其他類型的。

如果您沒有使用 GetNavigationState,參數值可以有複雜類型。 不過,您仍應該只使用基本類型,以避免框架的流覽堆疊保留參數參考所造成的記憶體使用量過多。 慣用的方法不是傳遞實際物件,而是傳遞識別碼,讓您可用來在目標登陸頁面中查閱物件。 例如,不要傳遞 Customer 物件,而是傳遞 參考給 CustomerID ,然後在流覽完成之後查閱 Customer

提示

如果您是使用 Microsoft .NET 語言進行程式設計, (C# 或 Microsoft Visual Basic ) ,TypeName 類型會專案為 System.Type。 使用 C# 進行程式設計時,通常會使用 typeof 運算子來取得 類型的 System.Type 參考。 在 Microsoft Visual Basic 中,使用 GetType。 如果您使用 Visual C++ 元件延伸模組 (C++/CX) ,您必須在其中建立 TypeName 協助程式結構,您可以使用 typeid 元件延伸模組

另請參閱

適用於

Navigate(TypeName, Object)

導致 Frame 載入由指定 之 Page衍生資料類型所代表的內容,也會傳遞由導覽目標解譯的參數。

public:
 virtual bool Navigate(TypeName sourcePageType, Platform::Object ^ parameter) = Navigate;
bool Navigate(TypeName const& sourcePageType, IInspectable const& parameter);
public bool Navigate(System.Type sourcePageType, object parameter);
function navigate(sourcePageType, parameter)
Public Function Navigate (sourcePageType As Type, parameter As Object) As Boolean

參數

sourcePageType
TypeName Type

要巡覽至的頁面,指定為其部分類別型別的型別參考。 必須是 頁面衍生的資料類型;否則會擲回例外狀況。 (類型參考會指定為 System.Type for Microsoft .NET,或 Visual C++ 元件延伸模組的 TypeName 協助程式結構, (C++/CX) ) 。

parameter
Object

Platform::Object

IInspectable

要傳遞至目標頁面的導覽參數;必須具有基本類型 (字串、char、numeric 或 GUID) ,才能使用 GetNavigationState支援參數序列化。

傳回

Boolean

bool

如果NavigationFailed事件處理常式已將Handled設定為true,則為false;否則為true。 如需詳細資訊,請參閱。

另請參閱

適用於

Navigate(TypeName, Object, NavigationTransitionInfo)

導致 Frame 載入由指定 之 Page衍生資料類型所代表的內容,也會傳遞由導覽目標解譯的參數,以及指出要使用的動畫轉換的值。

public:
 virtual bool Navigate(TypeName sourcePageType, Platform::Object ^ parameter, NavigationTransitionInfo ^ infoOverride) = Navigate;
bool Navigate(TypeName const& sourcePageType, IInspectable const& parameter, NavigationTransitionInfo const& infoOverride);
public bool Navigate(System.Type sourcePageType, object parameter, NavigationTransitionInfo infoOverride);
function navigate(sourcePageType, parameter, infoOverride)
Public Function Navigate (sourcePageType As Type, parameter As Object, infoOverride As NavigationTransitionInfo) As Boolean

參數

sourcePageType
TypeName Type

要巡覽至的頁面,指定為其部分類別型別的型別參考。 必須是 頁面衍生的資料類型;否則會擲回例外狀況。 (類型參考會指定為 System.Type for Microsoft .NET,或 Visual C++ 元件延伸模組的 TypeName 協助程式結構, (C++/CX) ) 。

parameter
Object

Platform::Object

IInspectable

要傳遞至目標頁面的導覽參數;必須具有基本類型 (字串、char、numeric 或 GUID) ,才能使用 GetNavigationState支援參數序列化。

infoOverride
NavigationTransitionInfo

動畫轉換的相關資訊。

傳回

Boolean

bool

如果NavigationFailed事件處理常式已將Handled設定為true,則為false;否則為true。 如需詳細資訊,請參閱。

範例

<Frame x:Name="myFrame">
    <Frame.ContentTransitions>
        <TransitionCollection>
            <NavigationThemeTransition />
        </TransitionCollection>
    </Frame.ContentTransitions>
</Frame>
// Play the default animation
myFrame.Navigate(typeof(Page2), null);

// Explicitly play the page refresh animation
myFrame.Navigate(typeof(Page2), null, new EntranceNavigationTransitionInfo());

// Play the drill in animation
myFrame.Navigate(typeof(Page2), null, new DrillInNavigationTransitionInfo());

// Suppress the default animation
myFrame.Navigate(typeof(Page2), null, new SuppressNavigationTransitionInfo());

另請參閱

適用於