Frame.Navigate Метод

Определение

Перегрузки

Navigate(TypeName)

Вызывает загрузку содержимого кадра, представленного указаннымстраницы .

Navigate(TypeName, Object)

Вызывает загрузку содержимого кадра , представленного указанным page, а также передачу параметра для интерпретации целевым объектом навигации.

Navigate(TypeName, Object, NavigationTransitionInfo)

Вызывает загрузку содержимого, представленного заданным типом данныхстраницыстраницы кадра, а также передачи параметра, интерпретируемого целевым объектом навигации, а также значением, указывающим анимированный переход к использованию.

Navigate(TypeName)

Вызывает загрузку содержимого кадра, представленного указаннымстраницы .

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 для Microsoft .NET или вспомогательной структуры typeName typeName для C++).

Возвращаемое значение

Boolean

bool

, если обработчик событий navigationFailed ; в противном случае . Дополнительные сведения см. в примечаниях.

Реализации

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

Применяется к

Navigate(TypeName, Object)

Вызывает загрузку содержимого кадра , представленного указанным page, а также передачу параметра для интерпретации целевым объектом навигации.

public:
 virtual bool Navigate(TypeName sourcePageType, Platform::Object ^ parameter) = Navigate;
/// [Windows.Foundation.Metadata.Overload("Navigate")]
bool Navigate(TypeName const& sourcePageType, IInspectable const& parameter);
[Windows.Foundation.Metadata.Overload("Navigate")]
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 для Microsoft .NET или вспомогательной структуры typeName typeName для C++).

parameter
Object

Platform::Object

IInspectable

Параметр навигации для передачи на целевую страницу.

Возвращаемое значение

Boolean

bool

, если обработчик событий navigationFailed ; в противном случае . Дополнительные сведения см. в примечаниях.

Атрибуты

Применяется к

Navigate(TypeName, Object, NavigationTransitionInfo)

Вызывает загрузку содержимого, представленного заданным типом данныхстраницыстраницы кадра, а также передачи параметра, интерпретируемого целевым объектом навигации, а также значением, указывающим анимированный переход к использованию.

public:
 virtual bool Navigate(TypeName sourcePageType, Platform::Object ^ parameter, NavigationTransitionInfo ^ infoOverride) = Navigate;
/// [Windows.Foundation.Metadata.Overload("NavigateWithTransitionInfo")]
bool Navigate(TypeName const& sourcePageType, IInspectable const& parameter, NavigationTransitionInfo const& infoOverride);
[Windows.Foundation.Metadata.Overload("NavigateWithTransitionInfo")]
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 для Microsoft .NET или вспомогательной структуры typeName typeName для C++).

parameter
Object

Platform::Object

IInspectable

Параметр навигации для передачи на целевую страницу; должен иметь базовый тип (строка, символ, числовый или GUID guid) для поддержки сериализации параметров с помощью GetNavigationState.

infoOverride
NavigationTransitionInfo

Сведения о анимированном переходе.

Возвращаемое значение

Boolean

bool

, если обработчик событий navigationFailed ; в противном случае . Дополнительные сведения см. в примечаниях.

Атрибуты

Примеры

<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());

Комментарии

Вы обрабатываете событие NavigationFailed для реагирования на сбой навигации. Вы можете обработать сбой непосредственно в обработчике событий или задать для свойства NavigationFailedEventArgs.Handled значение и использовать возвращаемое значение метода навигации для реагирования на сбой.

Значения параметров

Вы можете использовать GetNavigationState для сериализации состояния кадра и SetNavigationState для его восстановления позже. Чтобы включить сериализацию состояния кадра с помощью этих методов, необходимо использовать только базовые типы для parameterнавигации, например строк, символов, числовых и типов GUID. В противном случае GetNavigationState вызовет исключение.

Значение parameter может иметь сложный тип, если вы не используете GetNavigationState. Однако следует использовать только базовые типы, чтобы избежать избыточного использования памяти, вызванного стеком навигации кадра, содержащий ссылку на parameter. Предпочтительный подход заключается в том, чтобы не передавать фактический объект, а передавать идентификатор, который можно использовать для поиска объекта на целевой странице. Например, вместо передачи объекта Customer передайте ссылку на CustomerID, а затем найдите Customer после завершения навигации.

Кончик

При программировании с помощью языка Microsoft .NET (C# или Microsoft Visual Basic) проекты типов TypeName в качестве System.Type. При программировании с помощью C#обычно используется оператор typeof для получения ссылок на System.Type типа. В Microsoft Visual Basic используйте GetType. Если вы используете C++/WinRT, можно использовать функцию вспомогательного winrt::xaml_typename<T>() для создания объекта TypeName. Дополнительные сведения см. в шаблоне функции winrt::xaml_typename и примере кода.

См. также раздел

Применяется к