UI相关问题验证

时间:2015-10-30 13:37:45

标签: user-interface visual-studio-2012 visual-c++ automation add-in

我计划开发visual studio插件来验证visual c ++项目的UI相关问题。 以下是该项目的要求:

  1. 在我的项目中,一些加速键被保留用于某些菜单,例如,“O”保留用于打开文件,“S”保留用于保存项目。同样,项目的其余部分保留了15个关键字。我无法在visual c ++对话框中使用这15个加速键。
  2.   

    要求:我想创建Microsoft加载项“验证加速器”   键”。这个加载项将为我提供Visual Studio中的一个菜单   环境。点击菜单我想采取每一个控件   从对话框中检查提供的加速键是否属于   保留15键或不保留。如果任何控制加速键属于15   保留密钥然后我将要求开发人员更改错误   加速键。

    此功能类似于visual studio中的“Check Mnemonics”,但用途不同。

    1. 对话框中的对齐方式: 在visual c ++项目中,我们不断面临的问题是,对话框上的控件应该相互对齐,即对话框的顶部控件应该与最后一个控件垂直对齐,对话框的最右边控件应该与最左边的控件位于同一行水平。
    2. 我想检查每个控件的对齐方式。

      请向我提供任何指导,我可以从哪里开始或参考代码,记录ETC。

      感谢您的阅读。

1 个答案:

答案 0 :(得分:1)

查看此页面,了解您可以在VS中扩展的内容(很多):https://www.visualstudio.com/en-us/integrate/explore/explore-vside-vsi.aspx

特别是:Rosyln编译器扩展允许您以非常语义的方式读取(甚至修改)代码(即,您可以以编程方式“搜索”代码树以获取AcceleratorKey属性。)

http://roslyn.codeplex.com/wikipage?title=Samples%20and%20Walkthroughs&referringTitle=Home

已经有一段时间了,但我之前尝试过“CompilerServices”命名空间。假设VS Addin SDK为您提供了当前项目代码树的某种句柄,您可以遍历所有函数,查找赋值语句,过滤您感兴趣的类型。

https://msdn.microsoft.com/en-us/library/system.runtime.compilerservices(v=vs.110).aspx

编辑器扩展部分也可能适用: https://msdn.microsoft.com/library/dd885492.aspx