自定义控件中的图像未在 UWP 中加载(WinUI3 预览版 3 C++/WinRT)

Image in custom control isn't loaded in UWP (WinUI3 preview 3 C++/WinRT)

我正在关注 Microsoft tutorial on custom controls(templated) in WinUI3, and decided to fiddle with them (I'm new to WinUI). I've been trying to build an Image Card 控件,但似乎无法从应用程序文件夹中加载我的图像。

来自 MainPage.xaml 的标记(只是控件):

<local:BasicCard ImgSrc="Assets/woah.jpg" Title="Title here" Content="Content Here"/>

默认情况下控件的样式在Themes/Generic.xaml中,这是相关标记:

<ImageBrush.ImageSource>
     <BitmapImage UriSource="{Binding Path=ImgSrc, RelativeSource={RelativeSource TemplatedParent}}" />
</ImageBrush.ImageSource>

现在,如果我对 ImgSrc 属性 使用 hyperlink,它似乎工作正常,但我无法使用本地图像文件(在 Assets 文件夹中)。此外,同样的事情在桌面应用程序中工作正常,但前提是我使用绝对路径,而在 UWP 应用程序中,根本没有任何工作(除了 https link)。我已将 woah.jpg 文件放在所有文件夹中,并测试了 Themes/woah.jpgwoah.jpg 甚至绝对路径等模式,但没有任何效果。我究竟做错了什么?如有任何帮助,我们将不胜感激,如果需要,请索取完整的标记片段。

最后,我不知道这是否重要,但我目前正在将 属性 注册为 winrt::hstring 像这样:

Microsoft::UI::Xaml::DependencyProperty BasicCard::m_ImageSourceProperty =
    Microsoft::UI::Xaml::DependencyProperty::Register(
        L"ImgSrc",
        winrt::xaml_typename<winrt::hstring>(),
        winrt::xaml_typename<TitleBarPlease::BasicCard>(),
        NULL
    );

IInspectable 指出图像需要成为包的一部分是正确的,奇怪的是默认情况下并非包含 Assets 文件夹中的所有资源,右键单击图像,然后选择“包含在项目中”解决了问题(VS 2019)。