让VS在编辑器中跳转到第x行

时间:2012-06-27 12:08:58

标签: c# visual-studio-sdk checkin-policy

我正在为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
        }
    }
}

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以先尝试DTE automation object

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

或使用alternative ways获取它。

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

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

注意:我不确定准确的ExecuteCommand方法签名。您也可以使用other commands的相同方式操作IDE。