本文整理匯總了C#中Microsoft.VisualStudioTools.VisualStudioApp.OpenSolutionExplorer方法的典型用法代碼示例。如果您正苦於以下問題:C# VisualStudioApp.OpenSolutionExplorer方法的具體用法?C# VisualStudioApp.OpenSolutionExplorer怎麽用?C# VisualStudioApp.OpenSolutionExplorer使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Microsoft.VisualStudioTools.VisualStudioApp
的用法示例。
在下文中一共展示了VisualStudioApp.OpenSolutionExplorer方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: CustomCommandsAdded
public void CustomCommandsAdded() {
using (var app = new VisualStudioApp()) {
PythonProjectNode node;
EnvDTE.Project proj;
OpenProject(app, "Commands1.sln", out node, out proj);
AssertUtil.ContainsExactly(
node._customCommands.Select(cc => cc.DisplayLabel),
"Test Command 1",
"Test Command 2"
);
app.OpenSolutionExplorer().FindItem("Solution 'Commands1' (1 project)", "Commands1").Select();
var menuBar = app.FindByAutomationId("MenuBar").AsWrapper();
Assert.IsNotNull(menuBar, "Unable to find menu bar");
var projectMenu = menuBar.FindByName("Project").AsWrapper();
Assert.IsNotNull(projectMenu, "Unable to find Project menu");
projectMenu.Element.EnsureExpanded();
try {
foreach (var name in node._customCommands.Select(cc => cc.DisplayLabelWithoutAccessKeys)) {
Assert.IsNotNull(projectMenu.FindByName(name), name + " not found");
}
} finally {
try {
// Try really really hard to collapse and deselect the
// Project menu, since VS will keep it selected and it
// may not come back for some reason...
projectMenu.Element.Collapse();
Keyboard.PressAndRelease(System.Windows.Input.Key.Escape);
Keyboard.PressAndRelease(System.Windows.Input.Key.Escape);
} catch {
// ...but don't try so hard that we fail if we can't
// simulate keypresses.
}
}
}
}
示例2: ClientServerIntelliSenseModes
public void ClientServerIntelliSenseModes() {
string
solutionLabel = "Solution 'ClientServerCode' (1 project)",
projectLabel = "ClientServerCode",
nodeDirectoryLabel = NodejsFolderNode.AppendLabel("NodeDirectory", FolderContentType.Node),
nodeSubDirectoryLabel = NodejsFolderNode.AppendLabel("NodeSubDirectory", FolderContentType.Node),
browserDirectoryLabel = NodejsFolderNode.AppendLabel("BrowserDirectory", FolderContentType.Browser),
emptyBrowserSubDirectoryLabel = "BrowserSubDirectory",
browserSubDirectoryLabel = NodejsFolderNode.AppendLabel("BrowserSubDirectory", FolderContentType.Browser),
mixedDirectoryLabel = NodejsFolderNode.AppendLabel("MixedDirectory", FolderContentType.Mixed),
mixedDirectoryBrowserDirectoryLabel = NodejsFolderNode.AppendLabel("BrowserDirectory", FolderContentType.Browser),
mixedDirectoryNodeDirectoryLabel = NodejsFolderNode.AppendLabel("NodeDirectory", FolderContentType.Node),
browserCodeLabel = "browserCode.js",
mixedDirectoryRenamedLabel = NodejsFolderNode.AppendLabel("MixedDirectoryRenamed", FolderContentType.Mixed);
using (var app = new VisualStudioApp()) {
var project = app.OpenProject(@"TestData\ClientServerCode\ClientServerCode.sln");
using (new NodejsOptionHolder(NodejsPackage.Instance.GeneralOptionsPage, "ShowBrowserAndNodeLabels", true)) {
// Wait until project is loaded
var solutionExplorer = app.OpenSolutionExplorer();
solutionExplorer.WaitForItem(
solutionLabel,
projectLabel,
"app.js");
var nodejsProject = app.GetProject("ClientServerCode").GetNodejsProject();
var projectNode = solutionExplorer.WaitForItem(
solutionLabel,
projectLabel);
var browserDirectory = solutionExplorer.WaitForItem(
solutionLabel,
projectLabel,
browserDirectoryLabel
);
Assert.IsNotNull(
browserDirectory,
"Browser directories should be labeled as such. Could not find " + browserDirectoryLabel);
var browserSubDirectory = solutionExplorer.WaitForItem(
solutionLabel,
projectLabel,
browserDirectoryLabel,
emptyBrowserSubDirectoryLabel
);
Assert.IsNotNull(
browserSubDirectory,
"Project initialization: could not find " + emptyBrowserSubDirectoryLabel);
var nodeDirectory = solutionExplorer.WaitForItem(
solutionLabel,
projectLabel,
nodeDirectoryLabel
);
Assert.IsNotNull(
nodeDirectory,
"Node directories should be labeled as such. Could not find " + nodeDirectoryLabel);
var nodeSubDirectory = solutionExplorer.WaitForItem(
solutionLabel,
projectLabel,
nodeDirectoryLabel,
nodeSubDirectoryLabel
);
Assert.IsNotNull(
nodeSubDirectory,
"Project initialization: could not find " + nodeSubDirectoryLabel);
projectNode.Select();
using (var newItem = NewItemDialog.FromDte(app)) {
newItem.FileName = "newItem.js";
newItem.OK();
}
Assert.AreEqual(
"Compile",
nodejsProject.GetItemType("newItem.js"),
"Top level files should be set to item type 'Compile'");
Keyboard.Type("process.");
Keyboard.Type(Keyboard.CtrlSpace.ToString());
using (var session = app.GetDocument(Path.Combine(nodejsProject.ProjectHome, @"newItem.js")).WaitForSession<ICompletionSession>()) {
var completions = session.Session.CompletionSets.First().Completions.Select(x => x.InsertionText);
Assert.IsTrue(
completions.Contains("env"),
"New documents of the node type should open with default VS editor"
);
}
browserSubDirectory.Select();
using (var newBrowserItem = NewItemDialog.FromDte(app)) {
newBrowserItem.FileName = "newBrowserItem.js";
newBrowserItem.OK();
}
Keyboard.Type("document.");
//.........這裏部分代碼省略.........