创建新的SL4导航应用程序时编译错误

时间:2011-02-16 05:14:26

标签: silverlight visual-studio-2010 silverlight-4.0

我使用Visual Studio 2010创建了一个新的Silverlight导航应用程序。我没有对代码进行任何更改。刚按下F5跑。我收到以下错误消息:

类型'System.Windows.Navigation.NavigationEventArgs'存在于'c:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework \ Silverlight \ v4.0 \ System.Windows.Controls.Navigation.dll'中和'c:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework \ Silverlight \ v4.0 \ System.Windows.dll'

我右键单击解决方案资源管理器中的Silverlight导航应用程序文件夹,并将其“目标Silverlight版本”从Silverlight 4更改为Silverlight 3,然后运行该应用程序(按F5),它运行正常。

我已经花了很多时间来尝试解决方案。我想使用Silverlight 4开发应用程序。

非常感谢任何帮助。

此致 的Vivek

1 个答案:

答案 0 :(得分:0)

听起来你有Silverlight 4的运行时,但是有一套较旧的VS工具或较旧的SDK,或者你的项目以某种方式引用旧的SDK。

基本上,该类型从System.Windows.Controls.Navigation DLL(它在SL3中)移动到System.Windows.dll(它在SL4中)。 CLR类型转发应该解决这个问题。

由于程序集上的Silverlight版本号在SL3和SL4之间没有变化,因此如果您处于过时的工具/ SDK状态,可能有点难以判断。检查System.Windows.Controls.Navigation.dll上的最后修改日期,看看是否看起来SL4的发布时间,或者检查Frame控件是否有一个名为ContentLoader的属性 - 如果有,你有更新的位(因此我的答案没有帮助)。但是,如果没有,请尝试重新安装SL4工具和/或SDK,并检查您的项目是否引用了v4导航程序集。