如何设置和接收自定义 Visual Studio 项目命令的参数

问题描述 投票:0回答:1

我已经为 Visual Studio 项目创建了一个自定义命令,并且该命令在项目右键单击时可见。我想将一些参数(例如项目文件夹路径)传递给命令

EventArgs
。是否可以指定命令的参数。

这里是命令执行方法。

private void Execute(object sender, EventArgs e)
{
    ThreadHelper.ThrowIfNotOnUIThread();
    string message = string.Format(CultureInfo.CurrentCulture, "Inside {0}.MenuItemCallback()", GetType().FullName);
    string title = "Evaluate Project Command";

    // Show a message box to prove we were here
    VsShellUtilities.ShowMessageBox(
                                    package,
                                    message,
                                    title,
                                    OLEMSGICON.OLEMSGICON_INFO,
                                    OLEMSGBUTTON.OLEMSGBUTTON_OK,
                                    OLEMSGDEFBUTTON.OLEMSGDEFBUTTON_FIRST);
}

我想从命令中获取项目文件路径

EventArgs
或者有什么方法可以做到吗?

c# visual-studio-extensions vsix
1个回答
0
投票
命令执行的方法签名中的

EventArgs 通常不直接包含此数据。但是,您可以通过访问 DTE

 对象来检索项目详细信息,该对象代表开发环境本身。

看一下这个例子:

https://github.com/NDiiong/DevAssist/blob/3a90dbbbd42c57dd74749f01e26ba30aeac68732/src/Commands/OpenBinFolderCommand.cs#L18

© www.soinside.com 2019 - 2024. All rights reserved.