Windows 窗体和图形

更新:2007 年 11 月

此 .NET Compact Framework 2.0 版在以下几方面扩展了用户界面的功能:

  • Microsoft.WindowsCE.Forms 命名空间中具有更多 .NET Compact Framework 特定的控件。

  • 扩展了对 System.Windows.Forms 命名空间中的控件和类的支持。

  • 更强的绘图和图形支持。

  • 可自动滚动的窗体。

  • 剪贴板支持。

  • 键盘事件。

  • Pocket PC 特定的功能。

  • Smartphone 特定的功能。

  • 改进了 Windows 窗体应用程序和对象析构的关闭。

  • 对 Pocket PC 上的集成键盘的支持。

  • 对屏幕方向和分辨率更改的支持。请参见如何:处理方向和分辨率更改

Microsoft.WindowsCE.Form 中的新类型和更改的类型

下表摘要列出了 Microsoft.WindowsCE.Forms 命名空间中的新类和新更改。有关可以使用的控件的列表,请参见 .NET Compact Framework 中的 Windows 窗体控件

类型

说明

Notification

显示并响应用户通知。

DocumentList

显示并管理文档。

HardwareButton

为 Pocket PC 硬件上的按钮提供重写功能。

InputPanel.InputMethodCollection

提供对安装在 Pocket PC 上的所有输入法软件的访问。

InputMode

在 Smartphone 2003 上受支持。

LogFont

为文本效果(如旋转文本)定义逻辑字体对象。

MessageWindow

提供新的 Text 属性。可以使用此属性来设置和获取 MessageWindow 的文本。

MobileDevice

提供 Hibernate 事件,该事件允许您根据担保释放缓存的资源。

ScreenOrientation

允许您在不重置设备的情况下将屏幕方向值更改为 90、180 或 270。

需要使用运行 Windows Mobile 2003 Second Edition 的 Pocket PC。

Windows 窗体支持

下表总结了 .NET Compact Framework 2.0 中对 System.Windows.Forms 命名空间中的类的扩展支持。

控件或功能

扩展支持

Clipboard

支持能力包括复制和粘贴 DataObject

ComboBox

DropDownStyle 属性的支持。

Control

2.0 版支持以下成员:

DateTimePicker

请参见 如何:在 .NET Compact Framework 中使用 DateTimePicker 类

设计时体验

支持停靠、锚定和 Splitter

Font 集合

支持。

ForeColorBackColor 属性。

在公共控件上受支持。

Form 控件

支持以下成员:

使用全屏幕窗体性能更好。

Form.Load 事件

在发生 Form.Load 事件后会显示此窗体。这可能会影响那些执行自定义绘制或在事件发生期间显示另一个窗体的应用程序。

Help

此类和“帮助”事件及事件处理程序类一起都是受支持的。有关示例,请参见如何:显示用户帮助。但是,不支持 HelpProvider 类。

按键事件

在公共控件上受支持。

KeyPreview 属性

在公共控件上受支持。您可以使用 KeyPreview 属性从集成键盘捕获键盘事件。

LinkLabel

支持,但只提供自动格式化为带下划线及蓝色的基本超链接。

ListView

支持 EnsureVisible 方法。

菜单和工具栏

Pocket PC 应用程序中的一个子窗口的命令栏在添加时被置于 Z 顺序的顶部。这将导致命令栏隐藏所有重叠命令栏工作区的较低的 Z 顺序控件。

MonthCalendar

支持。

拥有的模式对话框

支持。

PictureBox

支持。

ProgressBar

支持。

ScrollableControl

支持。

Tab 键导航和焦点

.NET Compact Framework 2.0 版支持 TabIndexTabStop 属性,但不支持 UpdateZOrder 方法。 在 2.0 版中,不再需要显式设置要接收焦点的第一个控件。

如果一个窗体包含可以用 Tab 键导航的控件,则在显示该窗体时,该控件将获得焦点。这与 .NET Framework 全功能版行为相匹配,并且有助于键盘导航。

仅当将焦点成功设置到新控件时,设置 Focus 属性才会返回 true。如果禁用了目标控件,或将焦点移离 GotFocus 事件或 LostFocus 事件中的目标控件,则 Focus 方法将返回 false。

Tab 键导航发生在自定义控件的子控件之间。

TabControl

没有任何行为限制,您可以控制宽度。在默认情况下,控件停靠在顶部以维护 1.0 版行为。

TextBox

以下几项是受支持的:

线程处理

如果访问控件时所用的线程不是在没有使用 Invoke 方法的情况下创建该控件时所用的线程,将引发 NotSupportedException

ToolBar

支持按钮工具提示。

TrackBar

支持移除刻度线。

TreeView

支持以下成员:

支持使用 Enter 键选择项目。

UserControl

支持。

WebBrowser

完全支持需要用于 Pocket PC 和 Smartphone 的 Windows Mobile 5.0 版。有关更多信息,请参见如何:在 .NET Compact Framework 中使用 WebBrowser 控件

图形支持

.NET Compact Framework 2.0 扩展了对绘制和使用具有以下功能的图形对象的支持:

DirectX 和 Direct3D

.NET Compact Framework 2.0 提供了用于使用托管 DirectX 和 Direct3D 类开发移动应用程序的类。不过,若要运行这些应用程序,需要使用用于 Pocket PC 的 Windows Mobile 5.0 版软件和用于 Smartphone 的 Windows Mobile 5.0 版本。有关更多信息和“如何”主题,请参见.NET Compact Framework 中的 Mobile Direct3D 编程

Pocket PC 功能

.NET Compact Framework 2.0 为 Pocket PC 提供了以下功能:

有关更多信息,请参见 Pocket PC 开发和 .NET Compact Framework

Smartphone 功能

.NET Compact Framework 2.0 为 Smartphone 提供了以下扩展支持:

有关更多信息,请参见 Smartphone 开发和 .NET Compact Framework

改进的关闭方式

应用程序的关闭方式在两个方面有所改进:

  • 每当有控件被损坏时都会调用 Dispose 方法,从而提供了更好的关闭方式。

  • 当关闭主窗体时,.NET Compact Framework 就会以由上而下的方式损坏窗口。

请参见

概念

.NET Framework 支持和新功能

参考

.NET Compact Framework 中受支持的类

其他资源

.NET Compact Framework 中的 Windows 窗体控件

.NET Compact Framework 2.0 版中的新增功能