0

我正在为 VS 编写一个策略插件,它检查代码的几个问题。如果出现问题,它将显示在策略警告选项卡中。现在,当我在策略警告选项卡中双击它时,我想跳到编辑器中出现问题的那一行。我怎样才能做到这一点?

namespace PolicyPlugin
{
    [Serializable]
    public class MyPolicyPlugin : PolicyBase
    {
        //...

        //called if the user clicks on a policy warning
        public override void Activate(PolicyFailure failure)
        {
            // make jump to line x
        }
    }
}

谢谢!

4

1 回答 1

1

您可以先尝试获取DTE 自动化对象

EnvDTE.DTE dte = (EnvDTE.DTE)Package.GetGlobalService(typeof(EnvDTE.DTE));

或使用其他方法来获取它。

然后执行标准命令(在 Visual Studio 中按 CTRL+G 时会发生这种情况)

DTE.ExecuteCommand("Edit.Goto", "1234")

注意:我不确定确切的ExecuteCommand方法签名。您也可以对其他命令以相同的方式操作 IDE 。

于 2012-06-27T16:25:58.383 回答