我正在尝试在我的 VS2012 扩展中打开查找对话框,但我无法设置除查找文本之外的任何选项:
var dte=(_DTE)Package.GetGlobalService(typeof(_DTE));
dte.ExecuteCommand("Edit.Find");
// this gets set:
dte.Find.FindWhat="test";
// but all others are ignored:
dte.Find.Target=vsFindTarget.vsFindTargetSolution;
dte.Find.MatchCase=false;
dte.Find.MatchWholeWord=true;
我错过了什么吗?我正在使用 VS 2012 更新 1。
感谢 Ameen,我现在正在尝试一种不同的方法,但是我找不到任何关于在发出命令时需要如何设置参数的文档:
object a=false;
object b=null;
dte.Commands.Raise(
VSConstants.GUID_VSStandardCommandSet97.ToString("B").ToUpper(),
(int)VSConstants.VSStd97CmdID.FindMatchCase, ref a, ref b);
这将始终给我一个 E_INVALIDARG。