Classe ModelingPackage
Una volta sottoposto a override in una classe derivata, rappresenta il package VS per la finestra di progettazione del linguaggio specifico di dominio.
Questa API non è conforme a CLS.
Gerarchia di ereditarietà
System.Object
Microsoft.VisualStudio.Shell.Package
Microsoft.VisualStudio.Modeling.Shell.ModelingPackage
Spazio dei nomi: Microsoft.VisualStudio.Modeling.Shell
Assembly: Microsoft.VisualStudio.Modeling.Sdk.Shell.11.0 (in Microsoft.VisualStudio.Modeling.Sdk.Shell.11.0.dll)
Sintassi
'Dichiarazione
<CLSCompliantAttribute(False)> _
<ComVisibleAttribute(True)> _
Public MustInherit Class ModelingPackage _
Inherits Package _
Implements IVsToolWindowFactory
[CLSCompliantAttribute(false)]
[ComVisibleAttribute(true)]
public abstract class ModelingPackage : Package,
IVsToolWindowFactory
Il tipo ModelingPackage espone i seguenti membri.
Costruttori
Nome | Descrizione | |
---|---|---|
ModelingPackage | Inizializza una nuova istanza di ModelingPackage classe. |
In alto
Proprietà
Nome | Descrizione | |
---|---|---|
ApplicationRegistryRoot | (Ereditato da Package) | |
Locator | Ottiene il localizzatore l'elemento del modello, che individua elementi di modellazione nel pacchetto. | |
SetupMode | Ottiene il pacchetto di modellizzazione e verifica se la finestra di progettazione del linguaggio specifico di dominio non venga eseguita impostazione. | |
UserDataPath | (Ereditato da Package) | |
UserLocalDataPath | (Ereditato da Package) | |
UserRegistryRoot | (Ereditato da Package) | |
Zombied | (Ereditato da Package) |
In alto
Metodi
Nome | Descrizione | |
---|---|---|
AddOptionKey | (Ereditato da Package) | |
AddOrReplaceToolboxItem | Obsoleta. Aggiungere un elemento della casella degli strumenti se non è presente.Sostituirà un elemento della casella degli strumenti esistente se l'elemento è già presente | |
AddToolboxItems | Aggiungere la raccolta passata di elementi di ModelingToolboxItemBase nella casella degli strumenti di Visual Studio. | |
AddToolWindow | Aggiunge una finestra degli strumenti alla finestra di progettazione generata per un linguaggio specifico di dominio. | |
CreateInstance | (Ereditato da Package) | |
CreateLocator | Crea un indicatore di posizione dell'elemento del modello per il pacchetto. | |
CreateTool | (Ereditato da Package) | |
CreateToolboxItems | Crea gli elementi della casella degli strumenti. | |
CreateToolWindow(Type, Int32) | (Ereditato da Package) | |
CreateToolWindow(Guid%, UInt32) | Crea una finestra degli strumenti. | |
Dispose | (Ereditato da Package) | |
Equals | Determina se l'oggetto specificato equivale all'oggetto corrente. (Ereditato da Object) | |
Finalize | Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulitura prima che l'oggetto stesso venga recuperato dalla procedura di Garbage Collection. (Ereditato da Object) | |
FindToolWindow | (Ereditato da Package) | |
FindWindowPane | (Ereditato da Package) | |
GetAutomationObject | (Ereditato da Package) | |
GetDialogPage | (Ereditato da Package) | |
GetHashCode | Funge da funzione hash per un determinato tipo. (Ereditato da Object) | |
GetOutputPane | (Ereditato da Package) | |
GetProviderLocale | (Ereditato da Package) | |
GetService | (Ereditato da Package) | |
GetToolboxItemData | (Ereditato da Package) | |
GetToolWindow(Type) | Ottiene una finestra degli strumenti. | |
GetToolWindow(Type, Boolean) | Ottiene una finestra degli strumenti. | |
GetType | Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) | |
Initialize | inizializza ModelingPackage classe. (Esegue l'override di Package.Initialize()). | |
MemberwiseClone | Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object) | |
OnLoadOptions | (Ereditato da Package) | |
OnSaveOptions | (Ereditato da Package) | |
OnToolboxInitialized | Il gestore eventi per l'evento di ToolboxInitialized elementi della casella degli strumenti dinamici/personalizzati ri-sarà registrato. | |
OnToolboxUpgraded | Il gestore eventi per l'evento di ToolboxUpgraded elementi della casella degli strumenti dinamici/personalizzati ri-sarà registrato. | |
ParseToolboxResource(TextReader, ResourceManager) | (Ereditato da Package) | |
ParseToolboxResource(TextReader, Guid) | (Ereditato da Package) | |
QueryClose | (Ereditato da Package) | |
RegisterEditorFactory | (Ereditato da Package) | |
RegisterProjectFactory | (Ereditato da Package) | |
SetupDynamicToolbox | Aggiornare gli elementi della casella degli strumenti. | |
ShowOptionPage | (Ereditato da Package) | |
ToString | Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
In alto
Eventi
Nome | Descrizione | |
---|---|---|
ToolboxInitialized | (Ereditato da Package) | |
ToolboxUpgraded | (Ereditato da Package) |
In alto
Implementazioni esplicite dell'interfaccia
Nome | Descrizione | |
---|---|---|
IServiceContainer.AddService(Type, Object) | (Ereditato da Package) | |
IServiceContainer.AddService(Type, ServiceCreatorCallback) | (Ereditato da Package) | |
IServiceContainer.AddService(Type, Object, Boolean) | (Ereditato da Package) | |
IServiceContainer.AddService(Type, ServiceCreatorCallback, Boolean) | (Ereditato da Package) | |
IVsPackage.Close | (Ereditato da Package) | |
IVsToolWindowFactory.CreateToolWindow | (Ereditato da Package) | |
IOleCommandTarget.Exec | (Ereditato da Package) | |
IVsUserSettings.ExportSettings | (Ereditato da Package) | |
IVsPackage.GetAutomationObject | (Ereditato da Package) | |
IVsToolboxItemProvider.GetItemContent | (Ereditato da Package) | |
IVsPackage.GetPropertyPage | (Ereditato da Package) | |
IServiceProvider.GetService | (Ereditato da Package) | |
IVsUserSettings.ImportSettings | (Ereditato da Package) | |
IVsPersistSolutionOpts.LoadUserOptions | (Ereditato da Package) | |
IVsUserSettingsMigration.MigrateSettings | (Ereditato da Package) | |
IVsUserSettingsQuery.NeedExport | (Ereditato da Package) | |
IVsPackage.QueryClose | (Ereditato da Package) | |
IServiceProvider.QueryService | (Ereditato da Package) | |
IOleCommandTarget.QueryStatus | (Ereditato da Package) | |
IVsPersistSolutionOpts.ReadUserOptions | (Ereditato da Package) | |
IServiceContainer.RemoveService(Type) | (Ereditato da Package) | |
IServiceContainer.RemoveService(Type, Boolean) | (Ereditato da Package) | |
IVsPackage.ResetDefaults | (Ereditato da Package) | |
IVsPersistSolutionOpts.SaveUserOptions | (Ereditato da Package) | |
IVsPackage.SetSite | (Ereditato da Package) | |
IVsPersistSolutionOpts.WriteUserOptions | (Ereditato da Package) |
In alto
Note
Utilizzare questa classe per caricare un pacchetto di linguaggio specifico di dominio, che registra una factory dell'editor con Visual Studio.Visual Studio chiama la factory dell'editor, che crea la finestra di progettazione generata per il linguaggio specifico di dominio.Oltre a registrare le factory dell'editor, è possibile utilizzare questa classe per registrare le finestre degli strumenti.
Questa classe include il supporto di menu a livello del pacchetto.Pacchetti che le finestre degli strumenti di supporto sono necessarie distribuire IVsToolWindowFactory.
Esempi
Nell'esempio seguente viene aggiunta una finestra degli strumenti denominata Finestra degli strumenti personalizzata nella finestra di progettazione generata un'eccezione.Quando si apre il progetto nella finestra di progettazione generata un'eccezione, la scheda per questa finestra viene visualizzato accanto a Esplora soluzioni.Quando si fa clic sulla scheda della finestra, un'etichetta che legge Si tratta della finestra degli strumenti personalizzata verrà visualizzata al centro della finestra degli strumenti
Tramite questo codice vengono registrate la finestra degli strumenti:
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));
}
}
}
Questo codice definisce la finestra degli strumenti:
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; }
}
}
}
Codice thread safe
Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.