根据此页面https://docs.microsoft.com/en-us/windows/uwp/cpp-and-winrt-apis/binding-property
我正在编写以下代码
/*cl /nologo /Yupch.h /bigobj /await /std:c++latest /EHsc /I. demo.cpp pch.obj /link /winmd /out:appx\App.exe /subsystem:console /appcontainer*/
struct MainPage : PageT<MainPage>
{
MainPage()
{
Application::LoadComponent(*this, Uri(L"ms-appx:///MainPage.xaml"));
}
void ClickHandler(Windows::Foundation::IInspectable const& /* sender */, Windows::UI::Xaml::RoutedEventArgs const& /* args */)
{
cout << __func__ << endl;
}
};
MainPage.xaml页面如下
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<Button Click="ClickHandler">click</Button>
</Page>
但似乎从未调用过MainPage :: ClickHandler,那么正确的方法是什么?非常感谢!
答案 0 :(得分:0)
您的 MainPage.xaml 在根Page
声明中缺少x:Class attribute:
<Page x:Class="MyNamespace.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<Button Click="ClickHandler">click</Button>
</Page>
如果没有该属性,XAML平台将不知道在何处寻找绑定到ClickHandler
事件的Click
。