我的Wpf应用程序找不到资源'Mainwindow.xaml'

时间:2013-03-21 09:24:28

标签: wpf vb.net xaml

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

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

请尽快帮助。

5 个答案:

答案 0 :(得分:27)

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

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

答案 1 :(得分:16)

在我的情况下,我需要使用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

希望它有所帮助。祝你好运!

答案 2 :(得分:5)

这种情况几次发生在我身上 - 总是当我将MainWindow.xaml移到不同的文件夹而忘记更新StartupUri中的App.xaml时。

答案 3 :(得分:1)

Visual Studio以某种方式将我的MainWindow.xaml重命名为MainWindow(1).xaml,因此我再次将其重命名为MainWindow.xaml

答案 4 :(得分:0)

我将“ Mainwindow.xaml”文件重命名为“ NameList.xaml”,但没有更新App.xaml文件。一旦我做到了(StartupUri =“ NameList.xaml”),就可以了。