【问题标题】:How to navigate between pages in windows universal app using C++/CX如何使用 C++/CX 在 Windows 通用应用程序中的页面之间导航
【发布时间】:2016-10-19 22:06:33
【问题描述】:

我是 Windows 通用应用程序开发的新手。据我所知,可以使用 C++/CXC#JavaScript 制作 Windows 通用应用程序。但是微软强制使用 C++/CX 进行开发。 strong>C++/CX 因为它比其他人更好地使用了 winRT 的强大功能。所以我尝试使用 C++/CX for Visual Studio 2015 进行开发。 我来到导航的话题。要在应用程序中执行导航,有一个 API
this->Frame->Navigate(TypeName(MySecondPage::typeid))。这个 API 在运行时给了我一个异常。

这是我所做的详细场景。 1. 我使用 C++/CX 创建名为 NavigationSample 的项目。

  1. 然后我为我的第二个视图/ui 添加了新的 xaml 基本页面并将其命名为 MySecondPage.xaml

  2. 现在在第一页,即 MainPage.xaml 我添加了一个按钮。

  3. 在此按钮的事件中,可以说 button_Click 作为我编写的事件处理程序
    this->Frame->Navigate(TypeName(MySecondPage::typeid))

这里是详细代码:

void NavigationSample::MainPage::button_Click(**Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)**

{

this->Frame->Navigate(TypeName(MySecondPage::typeid));

}

  1. 这编译和构建很好。但在运行时给出异常。 (同样的场景在 C# 中效果很好)

    所以请大家帮我解决这个问题? 谢谢

【问题讨论】:

  • “它给出了一个异常”不是一个合适的问题描述。
  • 它给了我以下异常:“在 NavigationSample.windows.exe Microsoft C++ 异常中在 0x000007777 处引发异常。HRESULT 0x0007777f 参数不正确。WinRT 信息:dp”

标签: windows-phone-8.1


【解决方案1】:

这里有一个线索:

m_ptrSettingsPage->Dispatcher->RunAsync(Windows::UI::Core::CoreDispatcherPriority::Normal, ref new Windows::UI::Core::DispatchedHandler([this]() {
            m_ptrSettingsPage->Frame->Navigate(Windows::UI::Xaml::Interop::TypeName(AnnuitiesPage::typeid));
        }));

最好等待 C++/wimRT

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多