本课将介绍如何将命令添加到应用查询工具栏,以及编写运行时单击该命令后将执行的代码。该命令将执行参数化查询,并在屏幕上显示搜索的结果。
添加 Shell 命令。
在上一课中,添加屏幕命令栏上显示的命令。您还可以对工具栏按钮进行编程来完成其他任务,例如,打开另一个屏幕、 对数据应用筛选器或甚至发送一封电子邮件。
添加参数化查询
在**“解决方案资源管理器”中选择“客户”**节点。
在“项目”菜单上,单击“添加查询”。
在**“属性”窗口的“名称”**字段中,输入 MatchCustomer。
在**“查询设计器”中,单击“添加筛选器”**。
在第二个下拉列表中,选择**“ContactName”**。
在第四个下拉列表中,选择**“参数”**。
在最后的下拉列表中,单击**“添加新建”**。
类型 String 的一个名为 ContactName 的新参数将添加到**“查询编辑器”的“参数”**部分。
添加搜索屏幕
在工具栏上,单击**“添加屏幕”**按钮。
在**“添加新屏幕”对话框中的“选择屏幕模板”列表中,选择“搜索数据屏幕”**。
在**“屏幕名称”**字段中键入 SearchCustomer。
在**“屏幕数据”列表中,选择 – MatchCustomer,然后单击“确定”**。
在**“屏幕设计器”**中,选择 CustomerContactName 节点。
在**“属性”窗口中,选择“是参数”**属性。
将命令添加到应用程序工具栏
在**“解决方案资源管理器”**中双击 ContactList。
在屏幕设计器中,展开**“屏幕命令栏”**节点。
在**“添加”列表中,选择“新建按钮”**。
此时将出现“添加按钮”对话框。
在**“添加按钮”对话框中,先选择“新方法”,随后在“名称”框中键入 Find,然后单击“确定”**。
在**“属性”窗口中,选择“描述”**并输入“查找客户列表中选定的联系人”。
单击**“选择图像”**的链接。
在**“选择图像”对话框中,单击“导入”**。
在**“打开”对话框中,导航到包含图片的目录,选择一张图片,然后单击“打开”**。
单击**“确定”关闭“选择图像”**对话框。
在左窗格中,选择**“查找”**。
在**“属性”窗口中单击“编辑执行代码”**。
**“代码编辑器”**将出现,并显示 Find_Execute() 方法。
在 Find_Execute() 方法中,添加以下代码。
Application.ShowSearchCustomer(Contacts.SelectedItem.ContactName)
Application.ShowSearchCustomer(Contacts.SelectedItem.ContactName);
当用户单击您刚创建的按钮时,此代码将显示 ShowSearchCustomer 屏幕。
按 F5 运行该应用程序。
通过选择**“联系人”列表中的“霍华德斯奈德”并单击“查找”**按钮验证新命令。
SearchCustomer 屏幕应显示,且应显示**“大湖食品市场”的数据。当您单击“公司”列中的“大湖食品市场”时,应显示“客户详细信息”**屏幕。
详细了解
本课将介绍如何创建参数化查询来返回与 ContactName 参数匹配的**“客户”,以及如何根据查询创建搜索屏幕。您可能已经注意到 SearchCustomer 屏幕不会在运行应用程序中的“导航菜单”**上出现。基于参数化查询的屏幕只能通过执行命令打开,并不能添加到菜单中。
之后本课介绍如何将命令添加到 CurrentProductList 屏幕,给定**“显示名称”、“说明”和“图像”,然后添加单击命令按钮后每次都会运行的代码。该代码将执行显示 SearchCustomer 屏幕的 ShowSearchCustomer 方法。括号内的代码是该方法的参数,在这种情况下,是指“联系人”**集合中选定项的 ContactName。
您可能已经注意到选择**“联系人列表”**屏幕时,应用程序工具栏上只出现该命令。因为添加到工具栏的命令是屏幕特定的,所以您必须为每个屏幕都创建独立的命令。
后续步骤
在下一课中,您将学习如何向导航菜单添加项。
下一课:自定义菜单项