Udostępnij za pośrednictwem


Klasa ModelingPackage

Gdy zastąpiony w klasie pochodnej, reprezentuje VSPackage Projektant języka specyficzne dla domeny.

Ten interfejs API nie jest zgodny ze specyfikacją CLS. 

Hierarchia dziedziczenia

System.Object
  Microsoft.VisualStudio.Shell.Package
    Microsoft.VisualStudio.Modeling.Shell.ModelingPackage

Przestrzeń nazw:  Microsoft.VisualStudio.Modeling.Shell
Zestaw:  Microsoft.VisualStudio.Modeling.Sdk.Shell.12.0 (w Microsoft.VisualStudio.Modeling.Sdk.Shell.12.0.dll)

Składnia

'Deklaracja
<CLSCompliantAttribute(False)> _
<ComVisibleAttribute(True)> _
Public MustInherit Class ModelingPackage _
    Inherits Package _
    Implements IVsToolWindowFactory
[CLSCompliantAttribute(false)]
[ComVisibleAttribute(true)]
public abstract class ModelingPackage : Package, 
    IVsToolWindowFactory

Typ ModelingPackage uwidacznia następujące elementy członkowskie.

Konstruktorzy

  Nazwa Opis
Metoda chroniona ModelingPackage Inicjuje nowe wystąpienie ModelingPackage klasy.

Początek

Właściwości

  Nazwa Opis
Właściwość publiczna ApplicationRegistryRoot (Odziedziczone z Package).
Właściwość publiczna Locator Pobiera Lokalizator elementu modelu, który lokalizuje modelowania elementów w pakiecie.
Właściwość chroniona SetupMode Pobiera pakiet modelowania i sprawdza, czy projektant języka specyficzne dla domeny jest konfigurowany.
Właściwość publiczna UserDataPath (Odziedziczone z Package).
Właściwość publiczna UserLocalDataPath (Odziedziczone z Package).
Właściwość publiczna UserRegistryRoot (Odziedziczone z Package).
Właściwość publiczna Zombied (Odziedziczone z Package).

Początek

Metody

  Nazwa Opis
Metoda chroniona AddOptionKey (Odziedziczone z Package).
Metoda publicznaStatyczny element członkowski AddOrReplaceToolboxItem Nieaktualne. Dodaj element przybornika, jeśli nie jest obecny.Zastąpi istniejący element przybornika, jeśli element jest już obecny
Metoda chroniona AddToolboxItems Dodaj przekazany zbiór elementów ModelingToolboxItemBase w programie Visual Studio toolbox.
Metoda chroniona AddToolWindow Dodaje okna narzędzia wygenerowanej projektanta dla języka specyficzne dla domeny.
Metoda publiczna CreateInstance (Odziedziczone z Package).
Metoda chroniona CreateLocator Tworzy Lokalizator elementu modelu dla pakietu.
Metoda publiczna CreateTool (Odziedziczone z Package).
Metoda chroniona CreateToolboxItems Tworzy elementy w przyborniku.
Metoda chroniona CreateToolWindow(Type, Int32) (Odziedziczone z Package).
Metoda publiczna CreateToolWindow(Guid%, UInt32) Tworzy okno narzędzia.
Metoda chroniona Dispose (Odziedziczone z Package).
Metoda publiczna Equals Określa, czy określony obiekt jest równy bieżącemu obiektowi. (Odziedziczone z Object).
Metoda chroniona Finalize Umożliwia obiekt spróbuj zwolnić zasoby i wykonywania innych operacji oczyszczania przed jest odzyskane w procesie wyrzucania elementów bezużytecznych. (Odziedziczone z Object).
Metoda publiczna FindToolWindow (Odziedziczone z Package).
Metoda publiczna FindWindowPane (Odziedziczone z Package).
Metoda chroniona GetAutomationObject (Odziedziczone z Package).
Metoda chroniona GetDialogPage (Odziedziczone z Package).
Metoda publiczna GetHashCode Służy jako domyślnej funkcji mieszania. (Odziedziczone z Object).
Metoda publiczna GetOutputPane (Odziedziczone z Package).
Metoda publiczna GetProviderLocale (Odziedziczone z Package).
Metoda chroniona GetService (Odziedziczone z Package).
Metoda chroniona GetToolboxItemData (Odziedziczone z Package).
Metoda publiczna GetToolWindow(Type) Pobiera okna narzędzia.
Metoda publiczna GetToolWindow(Type, Boolean) Pobiera okna narzędzia.
Metoda publiczna GetType Pobiera Type bieżącego wystąpienia. (Odziedziczone z Object).
Metoda chroniona Initialize Inicjuje ModelingPackage klasy. (Zastępuje Package.Initialize()).
Metoda chroniona MemberwiseClone Tworzy kopię płytkie bieżące Object. (Odziedziczone z Object).
Metoda chroniona OnLoadOptions (Odziedziczone z Package).
Metoda chroniona OnSaveOptions (Odziedziczone z Package).
Metoda chroniona OnToolboxInitialized Obsługa zdarzeń dla zdarzenia ToolboxInitialized, które zostaną ponownie zarejestrowane elementów dynamicznych/custom przybornik.
Metoda chroniona OnToolboxUpgraded Obsługa zdarzeń dla zdarzenia ToolboxUpgraded, które zostaną ponownie zarejestrowane elementów dynamicznych/custom przybornik.
Metoda chroniona ParseToolboxResource(TextReader, ResourceManager) (Odziedziczone z Package).
Metoda chroniona ParseToolboxResource(TextReader, Guid) (Odziedziczone z Package).
Metoda chroniona QueryClose (Odziedziczone z Package).
Metoda chroniona RegisterEditorFactory (Odziedziczone z Package).
Metoda chroniona RegisterProjectFactory (Odziedziczone z Package).
Metoda chroniona SetupDynamicToolbox Odświeża elementów z przybornika.
Metoda publiczna ShowOptionPage (Odziedziczone z Package).
Metoda publiczna ToString Zwraca ciąg, który reprezentuje bieżący obiekt. (Odziedziczone z Object).

Początek

Zdarzenia

  Nazwa Opis
Zdarzenie chronione ToolboxInitialized (Odziedziczone z Package).
Zdarzenie chronione ToolboxUpgraded (Odziedziczone z Package).

Początek

Jawne implementacje interfejsu

  Nazwa Opis
Jawna implementacja interfejsuMetoda prywatna IServiceContainer.AddService(Type, Object) (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IServiceContainer.AddService(Type, ServiceCreatorCallback) (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IServiceContainer.AddService(Type, Object, Boolean) (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IServiceContainer.AddService(Type, ServiceCreatorCallback, Boolean) (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsPackage.Close (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsToolWindowFactory.CreateToolWindow (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IOleCommandTarget.Exec (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsUserSettings.ExportSettings (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsPackage.GetAutomationObject (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsToolboxItemProvider.GetItemContent (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsPackage.GetPropertyPage (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IServiceProvider.GetService (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsUserSettings.ImportSettings (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsPersistSolutionOpts.LoadUserOptions (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsUserSettingsMigration.MigrateSettings (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsUserSettingsQuery.NeedExport (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsPackage.QueryClose (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IServiceProvider.QueryService (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IOleCommandTarget.QueryStatus (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsPersistSolutionOpts.ReadUserOptions (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IServiceContainer.RemoveService(Type) (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IServiceContainer.RemoveService(Type, Boolean) (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsPackage.ResetDefaults (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsPersistSolutionOpts.SaveUserOptions (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsPackage.SetSite (Odziedziczone z Package).
Jawna implementacja interfejsuMetoda prywatna IVsPersistSolutionOpts.WriteUserOptions (Odziedziczone z Package).

Początek

Uwagi

Klasa jest używana do ładowania pakiet językowy specyficzne dla domeny, która rejestruje fabryka edytor z Visual Studio.Visual Studiowywołuje factory edytor, który tworzy wygenerowany projektanta dla języka specyficzne dla domeny.Oprócz zarejestrowania Edytor fabryk, również można użyć tej klasy do rejestru systemu windows narzędzie.

Klasa ta obejmuje menu wsparcie na poziomie pakietu.Pakiety, które obsługują narzędzie windows są wymagane do wprowadzenia w życie IVsToolWindowFactory.

Przykłady

W następującym przykładzie dodano okno Narzędzie, który nazywa się Okno narzędzia niestandardowe do wygenerowanego projektanta.Po otwarciu projektu w wygenerowanym Projektant kartę dla tego okna pojawia się obok Solution Explorer.Po kliknięciu karty okna etykietę, odczytuje jest okno niestandardowe narzędzie pojawia się w środku okna narzędzia

Ten kod rejestruje okna narzędzia:

using VSShellInterop = Microsoft.VisualStudio.Shell.Interop;
using VSShell = Microsoft.VisualStudio.Shell;
using DslShell = Microsoft.VisualStudio.Modeling.Shell;
using DslDesign = Microsoft.VisualStudio.Modeling.Design;
using VSTextTemplatingHost = Microsoft.VisualStudio.TextTemplating.VSHost;

namespace MS.RegisterTools
{
    [VSShell::ProvideToolWindowVisibility(typeof(CustomToolWindow), 
              Constants.RegisterToolsEditorFactoryId)]
    [VSShell::ProvideToolWindow(typeof(CustomToolWindow), 
              MultiInstances = false, 
              Style = VSShell::VsDockStyle.Tabbed, 
              Orientation = VSShell::ToolWindowOrientation.Right, 
              Window = "{3AE79031-E1BC-11D0-8F78-00A0C9110057}")]

    internal partial class RegisterToolsPackage
    {
        //Initializes the base class for the package
        protected override void Initialize()
        {
            base.Initialize();

            //Registers the custom tool window
            this.AddToolWindow(typeof(CustomToolWindow));
        }
    }
}

Ten kod zawiera definicję okna narzędzia:

using System;
using System.Windows.Forms;
using VSShellInterop = Microsoft.VisualStudio.Shell.Interop;
using VSShell = Microsoft.VisualStudio.Shell;
using DslShell = Microsoft.VisualStudio.Modeling.Shell;
using DslDesign = Microsoft.VisualStudio.Modeling.Design;
using VSTextTemplatingHost = Microsoft.VisualStudio.TextTemplating.VSHost;

namespace MS.RegisterTools
{

    //Creates a tool window and gives it a title, icon, and label
    internal class CustomToolWindow : DslShell.ToolWindow
    {

        //defines a label
  private Label myLabel;
        
        //creates the tool window
  public CustomToolWindow(IServiceProvider serviceProvider) : base(serviceProvider)
  { 
  }

        //gets the icon for the tool window
        protected override int BitmapResource
        {
            get { return 104; }
        }

        //gets the index for the icon
        protected override int BitmapIndex
        {
            get { return 0; }
        }

        //gets the name of the tool window
        public override string WindowTitle
        {
            get { return "Custom Window"; }
        }

        //sets up a label
  protected override void OnToolWindowCreate()
  {
      this.myLabel = new Label();
this.myLabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.myLabel.Text = "This is the custom tool window";
   }

        //puts a label on the tool window
  public override System.Windows.Forms.IWin32Window Window
  {
       get { return this.myLabel; }
  }
    }
}

Bezpieczeństwo wątku

Wszystkie publiczne static (Shared w języku Visual Basic) elementy członkowskie tego typu są bezpieczne dla wątków. Wystąpienia elementów członkowskich nie dają gwarancji bezpieczeństwa wątków.

Zobacz też

Informacje

Przestrzeń nazw Microsoft.VisualStudio.Modeling.Shell

IVsToolWindowFactory

IVsPackage