我使用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
答案 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导航程序集。