【问题标题】:Unable to set a background image on UWP C++ project with XAML无法使用 XAML 在 UWP C++ 项目上设置背景图像
【发布时间】:2024-01-13 05:57:01
【问题描述】:

我已经使用 Visual Studio 2019 和 C# 完成了几个项目,没有任何问题。我目前正在学习 C++,作为该过程的一部分,我正在使用 C++ 重新创建一个 C# UWP 应用程序。我还没有接触到 C++。我刚刚完成了 XAML,这也使用了 Visual State Manager,但问题是我无法使用图像作为根 StackPanel 的背景。

这在 C# 项目上工作得非常好,我一直在并排查看代码,甚至尝试将其设置为与各种图像混合,但唯一的结果是纯白色背景而不是图像。

我可以直接在 StackPanel 上设置背景颜色,效果很好,但没有图像。我已将图像放置在 Assets 文件夹和 Assets Filter 中。

这是带有测试图像的代码,它适用于 C# 项目,但同样不希望适用于 C++ 项目。

<Setter Target="stackPanel.(Panel.Background)">
<Setter.Value>
    <ImageBrush ImageSource="Assets/testImage.jpg" Stretch="Fill"/>
</Setter.Value>

在 C# 项目中,此代码位于每个 Visual State 组中,如前所述,它工作正常,但 C++ 项目仅提供白色背景。删除此代码后,它使用 StackPanel 颜色作为背景。如果我删除背景颜色也没有变化。

如果我在 App.xaml 中为背景图像创建 App 资源并指向它们,它也不起作用。同样的结果。

请注意,自项目创建以来唯一更改的是 MainPage.xaml 和 App.xaml。其他的我还没碰过。

【问题讨论】:

    标签: c# c++ visual-studio xaml uwp


    【解决方案1】:

    好的!我终于想通了。我需要将文件复制到项目的资产文件夹中,然后将文件从该特定文件夹复制到过滤器。它不会以任何其他方式工作。已排序!

    【讨论】:

      最近更新 更多