VS2010RC关于WPF开发的X个不同之一——居然多了一个程序集引用
2010-02-28 00:06
197 查看
目前,我正在将过去VS2008的程序移植到VS2010RC上。当然也会发现细节上的不同之处。写出来和大家分享。
X个不同之一,用X主要是我实在是不知道会有多少个不同。权且就用X代替了。先说今天发现的吧。
很多人建立一个WPF程序,喜欢新建一个WPF标准程序,当然我也不例外。不过有时 我也喜欢手工建立一个WPF应用程序,这样做我坦言很大程度上是满足一下自己小小的虚荣心。让一个新手看你的时候,眼神中流露出一种无尽崇拜的光芒,这种光芒是一种鸦片,会上瘾的。
比如使用写字板新建一个hellowpf.cs文件。然后键入如下代码:
代码
using System;
using System.Windows;
class hellowpf
{
[STAThread]
public static void Main()
{
Window win = new Window();
win.Title = "Hello mumu!";
win.Width = 300;
win.Height = 200;
win.Show();
Application app = new Application();
app.Run();
}
}
手工编译,可以使用开始菜单->所有程序->Microsoft Visual Studio 2010->Visual Studio Tools->Visual Studio 2010 Command Prompt,然后启动VS2010的命令行窗口,在里面键入编译命令。在过去VS2008下的编译命令如下所示:
csc hellowpf.cs /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\presentationframework.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\windowsbase.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\presentationcore.dll"
这句话的意思是使用csc命令来编译hellowpf该文件,还有需要引用三个程序集分别是presentationframework.dll,windowsbase.dll和presentationcore.dll。实际上一个典型的WPF程序至少需要四个程序集,还有一个是System.dll。由于默认情况下,已经引用了System.dll,因此不用显示地引用该dll。
我查看了一下安装了VS2010RC之后的引用程序集所在的目录。这三个Dll均在C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0之下。于是这个编译命令可以想当然地改成下面的样子
csc hellowpf.cs /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\presentationframework.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\windowsbase.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\presentationcore.dll"
事实告诉我们“想当然”多半是想当然地错。
编译完毕会提示 缺一个称之为System.Xaml.dll的程序集,换句话说过去一个典型的WPF程序只需要四个程序集的时代结束了,它还需要一个System.xaml.dll的程序集 由四人帮变成了五朵金花。因此编译命令应该写成如下,才能成功。
csc hellowpf.cs /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\presentationframework.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\windowsbase.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\presentationcore.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\system.xaml.dll
这是VS2010RC和过去VS2008X个不同之一,现总结如下:
在过去VS2008的程序里,一个最为简单的WPF程序至少需要四个程序集 system.dll,presentationframework.dll,windowsbase.dll和presentationcore.dll.
而VS2010RC里,需要五个程序集,除去前面的四个,还有System.xaml.dll。
由此也带来了一个问题,这个System.xaml.dll在这样一个简单的WPF程序里起到了什么作用?在下面链接里我搜索到了相关的资料http://ks.cn.yahoo.com/question/1409112400066.html 列出该资料的意思 不是说Helloj2ee找到了答案,而是所如果有大哥乐于作答 请不要在贴上这个链接了。而是给除更为翔实的资料。
此外在VS2010RC当中 还有一个不同 由于颇为细枝末节,不容易单独成文,因此就在这里提出:
Helloj2ee安装了VS2010RC确实没有找到XAMLPad,为何?
过去的XAMLPad通常都在\Program Files\Microsoft SDKs\Windows\v6.0A\bin目录下,安装了VS2010RC之后,目录改成了V7.0A,寻遍该目录也没有XAMLPad,试问为何?
此为2008pack1下手工编译的示例:/Files/helloj2ee/2008.rar
此为2010RC下手工编译的示例:/Files/helloj2ee/2010.rar
X个不同之一,用X主要是我实在是不知道会有多少个不同。权且就用X代替了。先说今天发现的吧。
很多人建立一个WPF程序,喜欢新建一个WPF标准程序,当然我也不例外。不过有时 我也喜欢手工建立一个WPF应用程序,这样做我坦言很大程度上是满足一下自己小小的虚荣心。让一个新手看你的时候,眼神中流露出一种无尽崇拜的光芒,这种光芒是一种鸦片,会上瘾的。
比如使用写字板新建一个hellowpf.cs文件。然后键入如下代码:
代码
using System;
using System.Windows;
class hellowpf
{
[STAThread]
public static void Main()
{
Window win = new Window();
win.Title = "Hello mumu!";
win.Width = 300;
win.Height = 200;
win.Show();
Application app = new Application();
app.Run();
}
}
手工编译,可以使用开始菜单->所有程序->Microsoft Visual Studio 2010->Visual Studio Tools->Visual Studio 2010 Command Prompt,然后启动VS2010的命令行窗口,在里面键入编译命令。在过去VS2008下的编译命令如下所示:
csc hellowpf.cs /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\presentationframework.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\windowsbase.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\presentationcore.dll"
这句话的意思是使用csc命令来编译hellowpf该文件,还有需要引用三个程序集分别是presentationframework.dll,windowsbase.dll和presentationcore.dll。实际上一个典型的WPF程序至少需要四个程序集,还有一个是System.dll。由于默认情况下,已经引用了System.dll,因此不用显示地引用该dll。
我查看了一下安装了VS2010RC之后的引用程序集所在的目录。这三个Dll均在C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0之下。于是这个编译命令可以想当然地改成下面的样子
csc hellowpf.cs /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\presentationframework.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\windowsbase.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\presentationcore.dll"
事实告诉我们“想当然”多半是想当然地错。
编译完毕会提示 缺一个称之为System.Xaml.dll的程序集,换句话说过去一个典型的WPF程序只需要四个程序集的时代结束了,它还需要一个System.xaml.dll的程序集 由四人帮变成了五朵金花。因此编译命令应该写成如下,才能成功。
csc hellowpf.cs /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\presentationframework.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\windowsbase.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\presentationcore.dll"
/reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NetFramework\V4.0\system.xaml.dll
这是VS2010RC和过去VS2008X个不同之一,现总结如下:
在过去VS2008的程序里,一个最为简单的WPF程序至少需要四个程序集 system.dll,presentationframework.dll,windowsbase.dll和presentationcore.dll.
而VS2010RC里,需要五个程序集,除去前面的四个,还有System.xaml.dll。
由此也带来了一个问题,这个System.xaml.dll在这样一个简单的WPF程序里起到了什么作用?在下面链接里我搜索到了相关的资料http://ks.cn.yahoo.com/question/1409112400066.html 列出该资料的意思 不是说Helloj2ee找到了答案,而是所如果有大哥乐于作答 请不要在贴上这个链接了。而是给除更为翔实的资料。
此外在VS2010RC当中 还有一个不同 由于颇为细枝末节,不容易单独成文,因此就在这里提出:
Helloj2ee安装了VS2010RC确实没有找到XAMLPad,为何?
过去的XAMLPad通常都在\Program Files\Microsoft SDKs\Windows\v6.0A\bin目录下,安装了VS2010RC之后,目录改成了V7.0A,寻遍该目录也没有XAMLPad,试问为何?
此为2008pack1下手工编译的示例:/Files/helloj2ee/2008.rar
此为2010RC下手工编译的示例:/Files/helloj2ee/2010.rar
相关文章推荐
- “VS2010RC关于WPF开发的X个不同之一——居然多了一个程序集引用”姊妹篇——有图有真相
- WPF开发学习:资源在内外部定义的不同方式和怎么引用,Style样式的四种使用(对比CSS)
- 关于 未能加载文件或程序集“”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 的解决办法
- 关于python同一个文件夹里面不同.py文件的交叉引用
- 微信小程序开发关于分享功能中怎么定义同一个页面中不同的按钮触发不同的分享内容,或者右上角的分享和页面中分享
- 圣殿骑士的一篇关于WPF的培训好文,WPF应用与团队开发(转)
- 【Android开发经验】关于“多线程断点续传下载”功能的一个简单实现和讲解
- 一个关于Bindows开发的中文论坛
- C++ 关于声明,定义,类的定义,头文件作用,防止头文件在同一个编译单元重复引用,不具名空间
- odoo开发笔记 -- 前台不同视图访问同一个模型
- 开发中关于正则表达式使用的一个小技巧
- 关于快速开发:网红妹纸,给了我一个idea!
- 关于以后 WEB 开发的一个想法(2)
- 分享一个程序猿在开发流程表单中关于数据项有导出没导入功能的解决办法
- 一个页面中引用多个不同版本的jquery
- wpf 在MVVM模式下开发时,怎样让一个属性绑定到多个RadioButton上
- 关于《创建组件**失败。错误消息为**未能加载文件或程序集**或它的某一个依赖。系统找不到指定文件。》的解决方案
- 关于在C++开发的项目中引用后缀名为.c文件的一句话提醒
- 关于开发低端安卓手机的一个坑之startActivityForResult原Activity被回收的问题
- 《Applications=Code+Markup》读书札记(2)——创建一个简单的 WPF 程序的代码结构及关于 Window 实例位置设置问题