为文本块创建实心画笔(cppwinrt)时,使用以下命令时会出错:
void MainPage::myStyle(Controls::TextBlock & block)
{
block.FontSize(72.0);
block.Foreground(Media::SolidColorBrush(Windows::UI::Colors::Orange()));
block.VerticalAlignment(VerticalAlignment::Center);
}
错误:LNK2019无法解析的外部符号“公共:__thiscall winrt :: Windows :: UI :: Xaml :: Media :: SolidColorBrush :: SolidColorBrush(struct winrt :: Windows :: UI :: Color const&)” >
当我拿出固态笔刷时,错误就消失了,而我也尝试了其他版本的固态笔刷,但都出现了同样的错误。
答案 0 :(得分:3)
您需要
#include <winrt/Windows.UI.Xaml.Media.h>
使用命名空间winrt::Windows::UI::Xaml::Media
中的类型。在Get started with C++/WinRT下有记录:
每当要使用Windows名称空间中的类型时,请包括相应的C ++ / WinRT Windows名称空间头文件,如图所示。对应的标头是与类型的名称空间同名的标头。例如,要将C ++ / WinRT投影用于Windows::Foundation::Collections::PropertySet运行时类
#include <winrt/Windows.Foundation.Collections.h>
。