Postupy: Přidat položky místní nabídky projektů SharePoint
Na jakýkoli projekt SharePoint můžete přidat položky místní nabídky. Položky nabídky se zobrazí, když uživatel klepne uzlu projektu v Aplikaci Solution Explorer.
Následující postup předpokládá, že jste již vytvořili rozšíření projektu. Další informace naleznete v tématu Postupy: Vytvoření rozšíření projektu aplikace SharePoint.
Přidání položky místní nabídky projektů SharePoint
V Initialize metoda vaše ISharePointProjectExtension provedení, úchyt ProjectMenuItemsRequested události projectService parametr.
V obslužnou rutinu události pro ProjectMenuItemsRequested událostí přidat nový IMenuItem k objektu ActionMenuItems nebo AddMenuItems kolekce argumenty parametru události.
V Click obslužnou rutinu události pro nový IMenuItem objekt provádět úlohy, kterou chcete spustit, když uživatel klepne na položku nabídky zástupce.
Příklad
Následující příklad kódu ukazuje, jak přidat položky místní nabídky SharePoint uzly projektu v Aplikaci Solution Explorer. Když uživatel klepne pravým tlačítkem na uzel projektu a klepne Zapisovat zprávy výstupní okno zobrazí zprávu v nabídce položku Visual Studio Výstup okna. Tento příklad používá k zobrazení zprávy projektu služby SharePoint. Další informace naleznete v tématu Pomocí služby SharePoint projektu.
Imports System
Imports System.ComponentModel.Composition
Imports Microsoft.VisualStudio.SharePoint
Namespace Contoso.Examples
<Export(GetType(ISharePointProjectExtension))> _
Friend Class ExampleProjectExtensionWithMenu
Implements ISharePointProjectExtension
Private Sub Initialize(ByVal projectService As ISharePointProjectService) _
Implements ISharePointProjectExtension.Initialize
AddHandler projectService.ProjectMenuItemsRequested, AddressOf ProjectMenuItemsRequested
End Sub
Private Sub ProjectMenuItemsRequested(ByVal Sender As Object,
ByVal e As SharePointProjectMenuItemsRequestedEventArgs)
Dim menuItem As IMenuItem = e.ActionMenuItems.Add("Write Message to Output Window")
AddHandler menuItem.Click, AddressOf MenuItem_Click
End Sub
Private Sub MenuItem_Click(ByVal Sender As Object, ByVal e As MenuItemEventArgs)
Dim project As ISharePointProject = TryCast(e.Owner, ISharePointProject)
If project IsNot Nothing Then
project.ProjectService.Logger.WriteLine(
String.Format("This message was written from a shortcut menu for the {0} project.", project.Name),
LogCategory.Status)
End If
End Sub
End Class
End Namespace
using System;
using System.ComponentModel.Composition;
using Microsoft.VisualStudio.SharePoint;
namespace Contoso.Examples
{
[Export(typeof(ISharePointProjectExtension))]
internal class ExampleProjectExtensionWithMenu : ISharePointProjectExtension
{
public void Initialize(ISharePointProjectService projectService)
{
projectService.ProjectMenuItemsRequested += projectService_ProjectMenuItemsRequested;
}
void projectService_ProjectMenuItemsRequested(object sender,
SharePointProjectMenuItemsRequestedEventArgs e)
{
IMenuItem menuItem = e.ActionMenuItems.Add("Write Message to Output Window");
menuItem.Click += MenuItemExtension_Click;
}
void MenuItemExtension_Click(object sender, MenuItemEventArgs e)
{
ISharePointProject project = e.Owner as ISharePointProject;
if (project != null)
{
project.ProjectService.Logger.WriteLine(
String.Format("This message was written from a shortcut menu for the {0} project.", project.Name),
LogCategory.Status);
}
}
}
}
Probíhá kompilace kódu
V tomto příkladu vyžaduje projektu knihovny třídy s odkazy na následující sestavení:
Microsoft.VisualStudio.SharePoint
System.ComponentModel.Composition
Nasazování rozšíření
Chcete-li nasadit rozšíření, vytvořte Visual Studio balíček rozšíření (VSIX) pro sestavení a všechny další soubory, které chcete distribuovat s rozšířením. Další informace naleznete v tématu Nasazování rozšíření pro nástroje služby SharePoint v aplikaci Visual Studio.
Viz také
Úkoly
Postupy: Vytvoření rozšíření projektu aplikace SharePoint