运行时异常:找不到xaml资源文件

wtzytmuj  于 2023-09-28  发布在  其他
关注(0)|答案(2)|浏览(165)

C++ WinUI 3应用程序
'无法从'ms-appx:/Sample. xaml '中找到资源。'实际上,默认情况下,xaml文件在CoreApp x64目录下的构建过程中放置在TestWRC文件夹下,但当生成xaml cpp代码时,文件引用根位置('ms-appx:/Sample. xaml'.')而不是(' ms-appx:/SampleWRC/Sample. xaml '.')。

<?xml version="1.0" encoding="utf-8"?>
<Page
    x:Class="TestWRC.Sample"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:TestWRC"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

    <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
        <Button x:Name="myButton" Click="myButton_Click">Click Me</Button>
    </StackPanel>
</Page>

复制bug的步骤

1.创建Balnk应用程序,打包(桌面中的WinUI 3)C++,解决方案和项目名称具有相同的名称(CoreApp)。取消选中该选项以将项目放在“解决方案”文件夹中。
1.以TestWRC为名称创建Windows运行时组件(WinUI 3)C++项目,然后添加Sample.xaml文件。

1.从CoreApp导航到WRC项目。
1.构建应用程序并运行
1.单击按钮,抛出“Cannot locate resource from 'ms-appx:/Sample. xaml”。误差
我觉得这与xaml文件的配置/属性设置有关,但在项目设置上没有找到任何东西。我错过了什么小东西吗?
源代码示例-https://github.com/GMudide/Bugs/tree/main/WinUI%203/CPP

ldioqlga

ldioqlga1#

您似乎已经在Github上发布了相同的问题,并且已修复。
尝试将AppContainerApplication property设置为false
如果您将AppContainerApplication设置为false,则Xaml编译器将在查找.xaml/.xbf文件的路径中添加该文件夹。

gzszwxb4

gzszwxb42#

在查看多个Microsoft页面后,发现它是一个已知问题。
要解决此问题,请将以下目标添加到Windows运行时组件的.vcxproj的末尾:

<Target Name="GetPriIndexName">
<PropertyGroup>
    <!-- Winmd library targets use the default root namespace of the project for the App package name -->
    <PriIndexName Condition="'$(RootNamespace)' != ''">$(RootNamespace)</PriIndexName>
    <!-- If RootNamespace is empty fall back to TargetName -->
    <PriIndexName Condition="$(PriIndexName) == ''">$(TargetName)</PriIndexName>
</PropertyGroup>
</Target>

参考:https://learn.microsoft.com/en-us/windows/apps/windows-app-sdk/stable-channel#:~:text=Known%20issues%20for%20both%20packaged%20and%20unpackaged%20WinUI%20applications%3A

相关问题