29

我一直在使用 vb.net 开发 WPF 应用程序,最近遇到了一个问题。

当我构建我的代码时,构建成功,但是在运行代码时 System.IO.IOexception 抛出异常“无法找到资源 ViewModel/ViewModel/Mainwindow.xaml” .Xaml 窗口位于名为 ViewModel 的文件夹中因此我不知道其他 ViewModel/ViewModel... 路径来自哪里,不应该是 viewModel/MainWindow.Xaml 吗?我已经尝试了所有可能的解决方案,包括清理项目,但它似乎不起作用。

唯一可行的解​​决方案是如果我将 StartupUri 从 StartupUri = "ViewModel\MainWindow.Xaml"TO更改,StartupUri = "...\MainWindow.xaml"但我怀疑这是否是正确的做法。

4

5 回答 5

52

更改StartupUri="MainWindow.xaml"StartupUri="FolderName/MainWindow.xaml"

解决了我的问题,当我将 MainWindow 移动到 View 文件夹时

于 2014-06-11T09:23:23.653 回答
19

在我的情况下,我需要使用 pack URI 语法将我的 App.xaml 文件的 SrartUpUri 属性设置为指向我的 MainWindow.xaml 的新位置,如下所示:

   <Application x:Class="TrafficLights.Controller.App"
                xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                StartupUri="pack://application:,,,/View/MainWindow.xaml">

更多关于包 URI 的信息:

http://msdn.microsoft.com/en-us/library/aa970069(v=vs.110).aspx

希望能帮助到你。祝你好运!

于 2014-02-28T10:27:37.960 回答
8

这发生在我身上几次 - 总是当我移动MainWindow.xaml到不同的文件夹并忘记更新StartupUriApp.xaml

于 2014-02-11T04:43:09.567 回答
1

Visual Studio 以某种方式将 my 重命名MainWindow.xamlMainWindow(1).xaml,所以我再次将其重命名为MainWindow.xaml

于 2017-04-27T06:28:59.837 回答
1

我将Mainwindow.xaml文件重命名为NameList.xaml并且没有更新App.xaml文件。一旦我这样做了StartupUri="NameList.xaml",就很好了。

于 2020-12-18T16:24:25.653 回答