WPFCalculator项目运行时报错:找不到资源window1.xaml
-
2008年1月6日 11:04
打开windows sdk里面的有关WPF的那个计算器的例子WPFCalculator,编译可以通过,为什么在运行的时候会报错:找不到资源window1.xaml,其他的例子都是对的,不知为什么?我的系统是XP SP2,VS2005。- 已移动 微软中文技术论坛Moderator 2009年5月20日 2:14 ([Loc]From:.NET Framework 相关)
全部回复
-
2008年1月6日 14:05
你是否修改了某些文件名?或者修改了哪个地方?
可以Debug一下看看到底是哪个文件要求访问Windows1.xaml 检查一下 App.xaml 的前面几行(如果有这个文件的话)
-
2008年1月9日 10:37
没有修改任何文件,是App.xaml文件调用的Windows1.xaml,具体如何Debug xaml文件我不清楚,谢谢你!
-
2008年1月12日 8:22
难道没人能解决这个问题? -
2008年1月12日 14:55版主
的确没有遇到过类似的问题。
尝试把 Debug 目录下的文件删除,然后重新编译一次,再运行看看结果。
-
2008年1月28日 12:42
请问如何上传附件?我根据WPFCalculator改写了一个工程,运行时同样报错:找不到资源window1.xaml,可是我不知如何上传上来?谢谢了! -
2008年1月28日 12:54版主
目前这个论坛还不允许上传附件的.但你可以贴上主要的代码.
你说的例子应该是这个http://msdn2.microsoft.com/en-us/library/ms771362.aspx
的确有这个问题,我看看先.
应该是提供的代码有问题.
我下载下来之后在VS2008 Beta2下连编译都通不过,提示找不到 Resources.Designer.cs 和 Settings.Designer.cs 两个文件.删除后可以编译但会出现之前描述的错误.
鼓捣了半天也找不到原因,原因不在Window1.xaml,因为我另建Window2.xaml改了代码都一样的错误.应该是在app加载的时候出错.下载的这个project是基于.NET 3.0的,可以新建一个3.0的WPF app,然后把mytextbox.cs, Window1.xaml和Window1.xaml.cs粘贴到新项目中,然后改命名空间为WPFCalculator,之后就可以正常运行了。
-
2008年1月30日 15:24
首先非常感谢您!我也是这样修改的,是成功的!但是如果我在原WPFCalculator工程上,修改以下文件:App.xaml、App.xaml.cs、Window1.xaml、Window1.xaml.cs,将工程中的其他文件删除,仍然报错。我比对了工程的属性与自动生成的一样,不知是哪儿出错?同时还有一些例子也有这样的问题,但是还有许多工程如果出现这样的问题,当清除解决方案之后,重新编译就对了,不知这是什么的原因?
App.xaml内容:
<Application x:Class="WPFCalculator.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="Window1.xaml">
<Application.Resources>
</Application.Resources>
</Application>
App.xaml.cs内容:using System;
using System.Windows;namespace WPFCalculator
{
public partial class App : Application
{
}
}Window1.xaml内容:
<Window x:Class="WPFCalculator.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Grid>
</Grid>
</Window>Window1.xaml.cs内容:
using System;
using System.Windows;namespace WPFCalculator
{
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
}
}
}
-
2008年2月16日 7:47
当我删除工程配置文件WPFCalculator.csproj中的<UICulture>en-US</UICulture>这一句就好了,哪位大虾能解释一下原因?
-
2008年5月19日 9:34
工程中指定了使用en-US资源(<UICulture>en-US</UICulture>),但是实际工程中并没有给出en-US资源,与是出错(找不到window1.xaml).
obj\Debug\en-US目录下是空的,什么都没有.
当你将<UICulture>en-US</UICulture>删除后,将使用缺省的资源,obj\Debug目录里的内容,于是问题解决了.
-
2009年8月28日 3:11
工程中指定了使用en-US资源(<UICulture>en-US</UICulture>),但是实际工程中并没有给出en-US资源,与是出错(找不到window1.xaml).
obj\Debug\en-US目录下是空的,什么都没有.
当你将<UICulture>en-US</UICulture>删除后,将使用缺省的资源,obj\Debug目录里的内容,于是问题解决了.
在编译时使用的是en-US选项进行编译并生成了en-US为名的文件夹,里面包含了可本地化的内容;但是你的本地系统使用的是zh-CN,在你运行exe的时候,运行时会检查本地culture,发现是zh-CN,于是就去找zh-CN文件夹,但是并没有生成该culture下的资源,所以出错。
解决方法:
将编译选项由<UICulture>en-US</UICulture>改为<UICulture>zh-CN</UICulture>,重新编译,ok。

