关于VSPackage中的VSCT,算是VSX开发中比较重要的一个成员。 我这里给出LearnVSXNow!系列文章关于VSCT的链接,除了#14有译文。 看完上面几篇文章,也就对VSCT有一些基本的认识了,能做什么,不能做什么应该了解。 在我项目中,一个功能,可能会出现在很多不同的地方,诸如新建项(New Item)的功能,可以在项目文件中点击右键,在添加(Add)菜单中找到,也可以在菜单中的项目(Project)中找到添加新项(Add New Item)。 如何把想要的功能添加到指定位置? 这里有一篇文章: 作者介绍了一种快速找到某个菜单的Guid:Id的方法,大家可以参考参考。 起初也没有使用这种方法,而是不停的翻看MSDN相关文档,诸如这篇。 但是所罗列的根本满足不了我的需求,且不可能一个一个去尝试。 最后发现其实在sdk中是有默认的vsct文件的,参考msdn 也就是上面所说的四个文件:
在其中不仅能查到所需要的GUID和ID,且能参考一些想要的东西,诸如助记符,图标,关系使用CommandPlacement,快捷键实现等等问题。 但在使用中发现,几个vsct文件,并没有完全概括vs2010所有的命令和菜单和组,有些是找不到的。 助记符助记符意思是说点Alt键后,菜单出现下划线的键位。 例如说在vs2010中打开一个文件,使用助记符的话,点下Alt键,依次点击f-o-f,即可弹出打开文件的对话框。 在项目中,我需要在菜单栏中增加一个菜单,别的菜单都有相应的助记符,当我在VSCT中如此定义一个Button的文本时:
告诉我没有该实体,随后我才想到了xml的实体 CommandPlacement起初是不知道CommandPlacement的存在的。
当时写一个新建交易的功能,要出现在很多个地方,所以定义了多个新建交易的Button,然后依次给其Parent赋值。
当然一直认为,绝对有解决方案,只是暂时不知道怎么做。
还没有看后续的关于VSCT的文章时,已经从上面的两个文件 快捷键快捷键也能从上面的两个文件中找到,诸如:
综合VS2010,可以得到一些全面的认识,比如说
你也能找到相应的原型,还有诸如如何定义功能键:
如果有要同时按Control和Shift怎么办:
如何查找说了很多找到这几个文件的好处,那如何把自己想要的功能放入指定的菜单内仍然是一个问题。 其实我上面已经提到,这四个文件几乎包括了所有VS2010的命令、菜单和组,这样我们完全可以使用最笨的办法,找到现有的Button,看它的Parent。 比如说我需要在新建项目这里增加一个Button:新建交易工程 那么我就可以用
然后我在查找这个ID: 如果你装的是中文也没有关系,可以学我当初使用 |
|
来自: ThinkTank_引擎 > 《VSX》