如何获取XAML按钮的内容?
Visual Studio Community 15.9.4,安装了C ++ / WinRT扩展。
我可以从点击处理程序中设置按钮的内容,但无法获取当前的内容。
MainPage.xaml中的按钮定义:
<Button x:Name="myButton" Click="ClickHandler">Click Me</Button>
MainPage.cpp中的点击处理程序定义:
void MainPage::ClickHandler(IInspectable const& sender, RoutedEventArgs const& args)
{
myButton().Content(box_value(L"Clicked"));
}
我还发现此代码可用于设置内容:
void MainPage::ClickHandler(IInspectable const& sender, RoutedEventArgs const& args)
{
Button sendButton = winrt::unbox_value<Button>(sender);
sendButton.Content(box_value(L"Clicked"));
}
我试图获取内容的代码只是无法编译。
答案 0 :(得分:1)
在发布原始问题时,引发了一个想法,我尝试了并且起作用了。将以下内容添加到MainPage.cpp点击处理程序中:
IInspectable sendButtonContent = sendButton.Content();
hstring sendButtonString = unbox_value<hstring>(sendButtonContent);
代码暂停后,单击“按钮”后,sendButtonString的值为“已单击”。