介绍
.NET Compact Framework 2.0版在以前版本——.NET Compact Framework1.0版——上提供许多改善。虽然普遍改善,但他们都集中在共同的目标——改进开发商生产力、以完整的.NET Framwork提供更强的兼容性,以及加大对设备特性的支持。这篇文章提供一个.NET Compact Framework2.0的变动和改进的高水平的概要。
用户界面
相关的灵活的设备显示器的小尺寸要求:应用程序高效率地使用可用空间。这在过去是要求开发商花费很多时间来设计和实施应用的用户界面。最近的在灵活的显示能力方面的进步,譬如高分辨率和多方位支持,使得用户界面发展的工作更具挑战性。为了简化创造应用用户界面的任务,.NET Compact Framework2.0提供许多关于这方面描述的新特性。
存在于用户界面中心的是控制;.NET Compact Framework2.0提供了很多新的控制。这些新控制由除了特别针对设备之外的控制组成。这种控制是.NET Compact Framework有的与.NET Framework一样充分的控制。
MonthCalendar控制是提供日期显示的可定制的日历控制,而且是有利于为用户提供一个图解方式来精选日期。
DateTimePicker控制是为显示和允许用户进入日期和时间信息的可定制的控制。由于它的一个紧凑显示和图解日期选择格式的组合,它特别适用于灵活的设备应用程序。当显示信息时,DateTimePicker控制与正文框相似;但是,当用户选择了一个日期, 可能显示一个类似于MonthCalendar控制的弹出日历。
WebBrowser控制压缩了设备Web浏览器,并且提供强大的显示能力和暴露很多事件。这些事件除了允许你的应用程序提供对于这些事件的用户化的行为,还允许你的应用程序追踪用户与Web浏览器内容的互动。
Notification控制压缩了袖珍版个人电脑的通知特性,就是允许应用程序寄给用户一个没有改变用户当前活动的上下文的通知。通知文本可以是纯文本或HTML。除显示信息之外,通知可以通过包含在通知的HTML文本中的HTML按钮和链接来接受用户的输入。
DocumentList控制为显示和处理文件提供一个标准的机制,譬如当打开Excel Mobile and Word Mobile中的使用的文件。DocumentList控制提供给用户操纵文件系统以及删除、复制、行动和重命名的能力。用户也可以用DocumentList控制通过红外线发送电子邮件和发送文件到其它设备。
-
中的DataGrid
Smartphone现在支持DataGrid 控制。就像袖珍个人电脑,Smartphone中的DataGrid控制支持构形的大小、多种显示形式、数据捆绑、空值处理和跟踪用户单元选择的事件。
LinkLabel控制是一个能显示一个或更多超链接的标签控制。
Splitter控制是一个提供恢复相接控制的能力的分离栏。
ToolBar控制是能将图像以按钮形式显示的Windows工具栏。
.NET Compact Framework2.0现在支持用户控制。增加用户控制的同时,.NET Compact Framework 2.0应用程序现在可以用Visual Studio 2005图像化地创建控制,并且,就如完整的.NET Framework一样,.NET Compact Framework2.0的用户控制自动在控制工具箱出现,而且可以用拖放安置在窗体上。
现在可用的Windows Mobile窗体因素的广泛多样性,要求应用程序开发者开发应用程序用户界面比以前更动态化。为了简化创造动态用户界面的任务,.NET Compact Framework2.0提供许多新布局和管理特性。
.NET Compact Framework2.0控制现在支持相接。相接一个控制设置它与双亲控制的边缘相反,即填充边缘。因为双亲控制调整尺寸,相接控制自动调整尺寸来填充双亲控制指定的边缘。控制也可以相接填装整个双亲。
.NET Compact Framework2.0控制也支持停滞。停滞控制识别,即控制的一边或多边应该依然是与对应的边缘或双亲控制的边缘保持的一个固定距离。因为双亲控制调整尺寸,控制自动地调整尺寸,因此控制的停滞的一边依然是与双亲控制的对应的边缘保持的适当的距离。
Form and Panel控制——除了继承于ScrollableControl控制的其他控制——现在提供AutoScroll属性。当设置为真,控制自动地提供一个卷曲栏来允许用户卷曲到任一个在控制可视范围之外的孩子控制。
所有ContainerControl起源的控制,譬如Form控制,现在提供AutoScaleMode属性。AutoScaleMode属性指出当控制在一个不同于最初它设计的决议上显示时,控制应该如何反映。当设置为AutoScrollMode.Dpi时,容器控制的所有孩子控制相应地与执行时间的显示决议相匹配。AutoScaleMode.None的值表明缩放比例不会自动完成,这样就使应用程序有责任在不同的决议上准确地提出。
-
和ResumeLayout
.NET Compact Framework2.0 Control类现在支持SuspendLayout和ResumeLayout 方法。就像在完整的.NETFramework中一样,这些方法在与一个异于聚集布局事件关联,譬如改变一系列的孩子控制的位置或调整它们的尺寸。
-
DpiX和DpiY属性
现在,Graphics类提供关于当前设备显示的决议的信息。DpiX 属性显示水平的每英寸像素的数量, 而且DpiY属性显示垂直的每英寸像素的数量。
为了简化丰富的用户界面的创作,.NET Compact Framework2.0增加了很多特性。这些特性允许应用程序更加容易运用自定义图画。
LogFont类添加到.NET Compact Framework2.0为在为在一个角度显示文本提供支持,以及为合并其他文本作用提供支持。
现在,应用程序可以创造具体颜色和大小的笔。
.NET Compact Framework2.0为用位图工作提供改进。这种改进包括:当创建位图和有能力将一个位图保存到一个文件或流时,提供更多的选择。
应用程序可以运用新加入的BitmapData类,通过LockBits和UnlockBits方法的联合更加容易观察和操作位图。因为应用程序需要在被处理的和自身的代码之间分享位图,现在,你可以通过GetHbitmap方法检索一个自身位图对象的句柄。
Windows Mobile 5.0软件通过执行DirectX应用程序设计界面(APIs)包含二维和三维的图画特性。因为.NET Compact Framework 2.0的开发商——瞄准Windows Mobile 5.0基础设备的人,DirectX特性集有能力贯穿包含在“Microsoft.Windows.DirectX”命名域中的类和对应的汇编。
现在,灵活的设备的一个增长数字包括键盘。为了允许管理开发商利用可利用的键盘,.NET Compact Framework2.0为键盘提供改进的支持。
注:在这部分提及的一些特性被作为一部分加到.NET Compact Framework1.0服务包,但在这里提它们,大家就肯定知道它们也是可用的。
现在,控制支持制表符命令以允许应用程序用户通过按制表符键在控制之间切换。
-
Events和Form.KeyPreview
现在,控制接受KeyUp、KeyDown和KeyPress事件。此外,现在,Form控制提供KeyPreview属性。当设置为假, keyboard事件就会被直接发到控制。当KeyPreview被设置为真,所有keyboard事件就会被发到Form实例以等待被发送到当前聚焦的控制。通过在Form实例的对应的事件处理设置KeyPressEventArgs属性为真,Form实例可以防止事件以焦点被送到控制。
数据
当然,数据是任一个应用程序的重要部份。不管有无关系,针对数据的类在必需访问和运作以数据编程的努力上的水平有直接效应。.NET CompactFramework2.0 除了为现存的类提供新特性,还提供很多新数据类。
-
Scrollable Access to SQL Server 2005 Mobile Edition
.NET Compact Framework2.0为进入SQL Server 2005 Mobile Edition (SQL Mobile)数据库——SqlCeResultSet提供新类。新的SqlCeResultSet类提供卷曲和可更新的直接存取SQL Mobile数据库。这个存取为存取SQL Mobile数据提供一种比DatasSet类更加快速和更加资源高效率的解决方案。和DataSet类一样,SqlCeResultSet可以作为数据绑定资源使用。
DataSet类和相关的类提供很多新特性。这些特性不仅提供改进的功能而且带来.NET Compact Framework的 DataSet类与整个.NET Framework更多协调。
-
和Merge Methods
.NET Compact Framework2.0 将GetChanges和Merge方法增加到DataSet类。 GetChanges方法返回一个包含所有自从最后访问AcceptChanges之后的所有变动的DataSet的副本。返回的DataSet优化为合并。
DataSet方法将DataSet合并到另一个里。它对于将变动从一个由一个GetChanges方法返回的DataSet合并到另一个特别有用。
-
方法
现在,. NET Compact Framework 的DataSet类提供Copy方法。Copy方法返回包含与原物相同的结构和数据的新DataSet。
-
Serialization
现在,DataTable类提供WriteXml和ReadXml方法。这些方法提供各自的表的XML连载和非连载。而且,连载和非连载的支持的结合允许DataTables作为Web服务论点而通过。
.NET Compact Framework2.0对于与XML相关类提供了很多改进。这些改进不仅简化运用XML数据运作的进程,而且给.NET Compact Framework中XML相关类带来更多与那些在整个.NET Framework中可用的资源的协调。
-
支持
现在,XmlDocument类支持SelectSingleNode和SelectNodes方法——二者都是提供用XPath搜索文档的能力。
-
连载
.NET Compact Framework2.0与相关属性类一起增加XmlSerializer类,譬如XmlElement和XmlAttribute。用XmlSerializer,你可以从XML保存和恢复类,以及保存和恢复类到XML。
新的XmlSerializer类也通过.NET Compact Framework2.0的Web代理基本类在内部使用。新的XmlSerializer类充分提供通过.NET Compact Framework1.0在使用的机制上极大地改善以连载和非连载Web服务器论点,因此提供改进的Web服务器访问性能。
-
图解
现在,.NET Compact Framework2.0为用XML图解文档工作提供XmlSchema类。这些类也可以使用到动态地产生图解。
新的数据绑定类——BindingSource——包含在.NET Compact Framework2.0中。 BindingSource通常分在一个或更多数据绑定控制和一个数据绑定源之间。当使用时,BindingSource类通过提供间接的层数和增加流动管理、改变事件以及更多来简化数据绑定。
通信
通信实际上是每个灵活的设备应用程序的一个重要部份。.NET Compact Framework2.0增加了几个新类以简化共同的通信要求,同时提供整体的新能力。除新的通信类之外,.NET Compact Framework2.0还包括对现有的类的改善。
-
服务
就像之前提到的那样,新的XmlSerializer类通过提供一个更加快速的Web服务器论点的XML连载和非连载而充分改进了Web业务访问性能。
除性能改善之外,现在.NET Compact Framework2.0的Web服务器类为SOAP1.2版提供支持。
作为想利用MSMQ异步信息特性的应用程序开发商,.NET Compact Framework2.0在“System.Messaging”命名域中提供类。这些类为发送和接收包含使用事物创建基本操作的信息提供支持。
为了减少当用连续端口工作时必需的编程的努力,.NET Compact Framework2.0 包含了SerialPort类。SerialPort类提供一个简化的对连续通信端口的提取。这个端口提供很多简化追踪和配置连续端口的特性。连续端口还简化以连续端口发送和接收数据——包括自动编码和解码数据发送和从端口接收数据。
-
支持
现在,.NET Compact Framework2.0网络类除了为IPv4支持外,还为IPv6提供支持。
结论
希望这个摘要通过使用.NET Compact Framework2.0给了你一个关于有利于灵活设备开发商的许多新特性。关于那些你想要的更多的细节的那些主题,你可以检索文献和MSDN。这篇文章里提到的有关每个主题的详细文章在或者很快就会在MSDN上。