构造用户界面
假如您曾使用过 Visual Studio .NET,则只需少量指导便可以开始使用 Smart Device Extensions。对于刚开始接触 .NET 的 eMbedded Visual Basic 开发人员,以下章节将引导您逐步了解 Visual Studio .NET IDE 的主要功能。
在创建新工程时,“Start Page”将由空白窗体代替(如图 4 所示)。
图 4:Windows 窗体设计器
第一眼看上去,Visual Studio .NET IDE 的这一部分与 eMbedded Visual Basic 中的窗体设计器很相似。仔细观察一下,您会注重到此窗口的顶部有一组选项卡。在上图中,显示了三个选项卡:“Start Page”、“Form1.vb”和“Form1.vb [Design]”。
我们已经了解了“Start Page”,但另外两个“Form1.vb”选项卡是干什么的呢?这两个选项卡将 eMbedded Visual Basic 窗体界面和 eMbedded Visual Basic 中的窗体代码模块关联起来。Visual Studio .NET IDE 答应您使用这些选项卡方便地在用户界面设计和代码窗口中切换。 新工具箱
Visual Studio .NET IDE 中工具箱的位置与 eMbedded Visual Basic 中工具箱的位置相同,但最初设为隐藏状态。Visual Studio .NET IDE 支持面板在不使用时自动隐藏。在设计窗体和编写代码时,该功能可提供更多的可用屏幕空间。
在隐藏状态下,工具箱(如图 5 所示)与 IDE 左侧对齐。将鼠标移动到“Toolbox”选项卡上,其显示状态将改变(如图 6 所示)。
图 6:可视状态下的 Visual Studio .NET 工具箱 Smart Device Extensions 提供的控件
eMbedded Visual Basic 提供的控件很有限,而 Smart Device Extensions 包含了非常丰富的控件,其中很多控件都支持数据绑定。表 1 显示了控件列表。
DateTimePicker
DomainUpDown
ErrorProvider
GroupBox
HScrollBar
ImageList
Label
LinkLabel
ListBox
ListView
MainMenu
MonthCalendar
NumericUpDown
OpenFileDialog
Panel
PictureBox
ProgressBar
RadioButton
SaveFileDialog
StatusBar
TabControl
TextBox
Timer
ToolBar
ToolTip
TrackBar
TreeView
VScrollBar
表 1:Smart Device Extensions 包含的控件 向窗体中添加控件
Visual Studio .NET 工具箱的使用方法与 eMbedded Visual Basic 中的相同。只需在工具箱中选择控件,然后将其拖放到您的窗体中即可。在图 7 中,窗体上已经添加了一个按钮。Visual Studio .NET 在其“Format”菜单下提供了一整套用户界面配置工具,包括对齐、尺寸、间距、居中和锁定位置。
治理工程
使用“Solutions EXPlorer”窗口来治理 .NET 小型框架工程。“Solutions Explorer”窗口在功能上类似于 eMbedded Visual Basic 中的“Project Explorer”窗口(如图 8 所示),用于访问和配置工程及其组件。

图 8:Visual Studio .NET“Solution Explorer”窗口 工程项
eMbedded Visual Basic 所支持的工程项少得令人难以置信 - 只有窗体和标准模块。而 Smart Device Extensions for Visual Studio .NET 提供了大量的工程项供您选择。表 2 具体说明了所支持的项、对应的文件扩展名以及简要说明。
工程项 |
文件扩展名 |
说明 |
程序集信息文件
.vb
用于存储程序集信息(例如版本控制和程序集名称)的文件。
程序集资源文件
.resx
在 Localized 属性设为 TRUE 时,该文件包含工程的本地化信息。
位图
.bmp
空白位图图像文件,可用于创建简单的图像。
类
.vb
代码文件,开始时包含一个简单的空类声明。
代码文件
.vb
空的 Visual Basic 或 Visual C# 代码文件,不包含任何代码。
组件类
.vb
具有可视设计器的类(业务对象)。
光标文件
.vb
创建自定义光标的图像文件。
自定义控件
.vb
非可视化设计的 Windows 控件(即没有图形设计界面)。必须通过编写代码来创建该控件。
数据表单
.vb
数据表单,用于辅助创建数据连接。
数据集
.xsd
XSD 架构,为数据集(用于以编程方式访问数据)生成类。
动态发现文档
.vsdisco
有时称为 disco 文件,为枚举所有 Web 服务和 Web 工程中的所有架构提供了一种方法。
图标文件
.vb
创建自定义图标的图像文件。
继续的窗体
.vb
通过可视继续方法从另一个窗体中派生的 Windows 窗体。从另一个窗体中继续时,将把该窗体作为初始窗体。然后,您可以可视地添加或改变其内容。
继续的用户控件
.vb
类似于用户控件,只不过它是从另一个现有用户控件派生而来的。
模块(仅 Visual Basic)
.vb
代码文件,开始时包含一个用于存储函数的文件。
静态发现文件
.disco
用于发布有关 Web 服务的信息。
文本文件
.txt
空文本文件。
用户控件
.vb
可以放在 Windows 窗体上的控件(可视元素)。具有一个可视设计器。
Windows 窗体
.vb
基本 Windows 窗体,可用于本地应用程序。具有一个图形化设计表面。
XML 文件
.xml
XML 文档文件。
XML 架构
.xsd
不含有生成的类的 XSD 架构文件。
表 2:Smart Device Extensions 提供的支持文件类型 配置属性
Visual Studio .NET“Properties”窗口答应您配置窗体和控件的属性。如图 9 所示,“Properties”窗口提供了按分类排序和按字母排序的视图。分类视图可以折叠或展开,以方便地处理特定的属性集。

图 9:Visual Studio .NET“Properties”窗口 注重:与 eMbedded Visual Basic 的相应控件相比,Visual Basic .NET 中控件的某些属性名发生了一些变化。例如,Visual Basic .NET 按钮提供 Text 属性,代替了原来的 Caption 属性。
添加代码
如图 10 所示,Visual Studio .NET 代码窗口与 eMbedded Visual Basic 版本相似。主编辑区域包含了新增的功能(可以折叠和展开代码部分)。此窗口左上部的组合框用于选择类,而 eMbedded Visual Basic 中的这个区域则用于选择对象;代码窗口右上部的组合框用于选择方法,而 eMbedded Visual Basic 中的这个区域则用于选择过程。Visual Studio .NET 代码窗口支持自动完成语句,包括自动列出成员和提供参数信息。

图 10:演示了 Microsoft® IntelliSense Visual Studio .NET 代码窗口 注重:Visual Basic .NET 支持重载方法。对于专门使用 eMbedded Visual Basic 的开发人员,重载是一个新概念。简单地说,重载答应您多次声明一个方法,而每次都可以使用不同的参数列表。在上图中,您可以注重到在方法说明窗口的左下部新增了导航功能。此导航工具可以帮助您选择最能满足开发需要的方法说明。需要注重的是,Visual Basic .NET 要求为方法定义的所有参数提供值。Visual Basic .NET 不支持可选参数。进入讨论组讨论。
Visual Basic .NET 窗体背后的代码
使用 Visual Basic .NET 创建窗体时,实际上是创建用于定义窗体界面的代码。这一点不同于 eMbedded Visual Basic。在 eMbedded Visual Basic 中,窗体的定义与窗体的代码是分开说明的。
Windows 窗体设计器自动生成这些代码,并将其添加到窗体的代码模块中,如图 11 所示。开发人员通常看不到这些代码,而只能作为一个区域来引用。此区域具有一个标签,标题为“Windows Form Designer generated code”。 注重:窗体的这一部分是由 Visual Studio .NET 的“Windows Form Designer”组件创建和维护的。不要手动修改这部分代码,否则可能产生无法猜测的结果。

图 11:隐藏了所生成代码的代码段
可以单击代码窗口最左侧的加号 (+) 和减号 (-) 符号来展开和折叠区域。展开由 Windows 窗体设计器生成的代码,可以显示用于定义窗体界面的代码,如图 12 所示。

图 12:显示了所生成代码的代码段(请注重窗体和控件的定义) 配置工程
工程属性通过“Property Pages”对话框配置。可通过单击“Project”菜单下的“Properties”访问此对话框,或在“Solution Explorer”中的工程上单击鼠标右键,然后从弹出菜单中选择“Properties”,如图 13 所示。

图 13:访问工程属性
“Property Pages”对话框(如图 14 所示)可用于配置工程的所有内容,包括平台、设备类型和目标输出文件夹等设备部署细节。

图 14:配置工程属性 生成应用程序
要生成应用程序,请从“Build”菜单下单击“Build”。将出现“Output”窗口(假如当前未显示该窗口),如图 15 所示。

图 15:显示工程生成结果的 Visual Studio .NET“Output”窗口
“Output”窗口用于显示部署消息、异常处理和状态通知。部署消息包括设备信息、源文件夹和目标文件夹、文件信息以及内存使用情况。异常处理信息包括连接超时、内存不足、未找到路径、拒绝访问、共享冲突、取消的部署以及其他无法猜测的错误。状态信息包括成功、失败以及跳过的项。请参考“Output”窗口寻求解决编译和部署问题的方法。 测试应用程序
与 eMbedded Visual Basic 类似,Smart Device Extensions 答应您在模拟器或在设备上测试应用程序。与 eMbedded Visual Basic IDE 类似,对 Visual Studion .NET IDE 的 SDE 增强提供了一个菜单栏界面(如图 16 所示),答应您选择测试目标。

图 16:选择部署目标 本文总结
诚如您所知,我只是简单设想了一下在 Windows CE 操作系统下基于 Visual Basic 开发的前景。多少年来,我先后尝试过用 Visual Basic for CE 和 eMbedded Visual Basic 完成我想做的工作,而今一个既酷又强大的替代工具马上即将问世了。在不久的将来,就可以找到 SDE 测试版,以便练习 Visual Basic .NET 的使用技巧。您需要通过此方法来完成这种转变。 返回原路
这就是本月的话题。希望您现在明白了我为什么无法独享这一信息。在接下来的几个月内,我希望能够找到更多的文章,并且抛开 SDE 的理论知识,开始介绍使用这个强大的新工具来实际创建应用程序的要点。这个月我会前往洛杉矶,在 PDC 上演讲从 eMbedded Visual Basic 到 SDE 的演变,并到海上进行一些必要的冲浪运动。到时再见吧,现在,我要动身了。 进入讨论组讨论。