以编程方式访问 Visual Studio 解决方案资源管理器搜索框
Programmatically accessing Visual Studio Solution Explorer search box
我正在开发一个需要 select 解决方案中特定项目的 VS 扩展。但是,如果用户之前在解决方案资源管理器搜索框中键入了任何文本,当我找到项目项时,调用
.Select(vsUISelectionType.vsUISelectionTypeSelect)
对它不起作用。我的想法是在 select 进入项目之前访问搜索框并清除它。不幸的是,我无法找到任何关于如何做到这一点的线索,在文档和教程中没有,甚至没有检查
dte.ToolWindows.SolutionExplorer
对象。我是不是做错了,所以我找不到解决本应很容易做到的事情的方法?
提前致谢,任何ideas/help将不胜感激!
清除搜索框:
IVsSolutionUIHierarchyWindow solutionWindows = (IVsSolutionUIHierarchyWindow)VsShellUtilities.GetUIHierarchyWindow(this.ServiceProvider, VSConstants.StandardToolWindows.SolutionExplorer);
if (solutionWindows is IVsWindowSearch)
{
var slw = solutionWindows as IVsWindowSearch;
slw.ClearSearch();
}
我正在开发一个需要 select 解决方案中特定项目的 VS 扩展。但是,如果用户之前在解决方案资源管理器搜索框中键入了任何文本,当我找到项目项时,调用
.Select(vsUISelectionType.vsUISelectionTypeSelect)
对它不起作用。我的想法是在 select 进入项目之前访问搜索框并清除它。不幸的是,我无法找到任何关于如何做到这一点的线索,在文档和教程中没有,甚至没有检查
dte.ToolWindows.SolutionExplorer
对象。我是不是做错了,所以我找不到解决本应很容易做到的事情的方法?
提前致谢,任何ideas/help将不胜感激!
清除搜索框:
IVsSolutionUIHierarchyWindow solutionWindows = (IVsSolutionUIHierarchyWindow)VsShellUtilities.GetUIHierarchyWindow(this.ServiceProvider, VSConstants.StandardToolWindows.SolutionExplorer);
if (solutionWindows is IVsWindowSearch)
{
var slw = solutionWindows as IVsWindowSearch;
slw.ClearSearch();
}