关于用户界面的种种(上)一文介绍了VS中的工具窗口。关于用户界面还有更多的内容,比如选项页(Options Page)、菜单图标,具体来说,本文介绍的内容将包括:
1)创建自定义的选项页;
2)设置菜单项的图标;
创建自定义的选项页
在安装了DPack后,可以在VS的选项页(Tools->Options)中看到新添加的一项:
这看起来很专业。很多时候我们开发的Add-In需要进行一定的配置,选项页是最佳选择:VS的用户一般习惯于在此处进行各种配置,所以把配置界面放在其它地方就显得突兀了。
对Add-In来说,我们需要实现IDTExtensibility2接口,这样可以将其交由VS来管理,选项页的实现与此类似,不过这里的接口是IDTToolsOptionsPage(从Add-In和选项页的开发过程中,我们也可以考虑如何开发自己的“插件式”应用程序)。具体来说,分为两步:
1)创建用户控件(User Control)来实现IDTToolsOptionsPage
该接口有5个方法,具体可以参看这里。其中最重要的是OnAfterCreated()和OnOK(),前者在VS呈现选项页时执行,后者在用户点击OK时执行。
2)在.Addin文件中添加新选项页的配置
此时需要节点<ToolsOptionsPage>,VS将根据该节点加载选项页。
下面通过一个简单的例子来介绍具体的实现过程。
搜索编辑器中的选中文本
我们在编写代码的时候,经常需要搜索一些相关的内容,比如某个类型的信息,这时就复制类的名称,打开浏览器,打开Google,搜索那个类,有时可能会在其它搜索引擎或MSDN搜索。如果能把搜索的过程集成到VS中,是不是就方便了呢?
实现这个功能很简单。只要获取当前选中的文本,然后通过默认浏览器打开相应的URL就可以了:
![](https://i-blog.csdnimg.cn/blog_migrate/0be121fa5b8988fbabbbc526af3b0fc0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/34031c708bfe702fe82d01ff5c6593aa.gif)