Classe ToolWindow
Una volta eseguito da una classe derivata, rappresenta una finestra degli strumenti della finestra di progettazione generata per un linguaggio specifico di dominio.
Questa API non è conforme a CLS.
Gerarchia di ereditarietà
System.Object
Microsoft.VisualStudio.Shell.WindowPane
Microsoft.VisualStudio.Modeling.Shell.ModelingWindowPane
Microsoft.VisualStudio.Modeling.Shell.ToolWindow
Microsoft.VisualStudio.Modeling.Shell.ModelExplorerToolWindow
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)> _
Public MustInherit Class ToolWindow _
Inherits ModelingWindowPane
[CLSCompliantAttribute(false)]
public abstract class ToolWindow : ModelingWindowPane
Il tipo ToolWindow espone i seguenti membri.
Costruttori
Nome | Descrizione | |
---|---|---|
ToolWindow | Inizializza una nuova istanza di ToolWindow classe. |
In alto
Proprietà
Nome | Descrizione | |
---|---|---|
ActiveInPlaceEditWindow | Ottiene e imposta la finestra attiva per la modifica sul posto. (Ereditato da ModelingWindowPane) | |
BitmapIndex | Una volta sottoposto a override in una classe derivata, ottiene l'indice della bitmap visualizzato accanto al nome della finestra degli strumenti. | |
BitmapResource | Una volta sottoposto a override in una classe derivata, ottiene l'ID della risorsa della bitmap visualizzato accanto al nome della finestra degli strumenti. | |
Content | (Ereditato da WindowPane) | |
DocData | Ottiene un documento in memoria. | |
EnableUndo | Ottiene la finestra degli strumenti e consente Annulla comando. | |
Frame | ottiene IVsWindowFrame che corrisponde a questa finestra. (Ereditato da ModelingWindowPane) | |
HasSelectableObjects | Ottiene la finestra degli strumenti disabilita oggetti selezionati l'ordinamento se un documento non viene caricato. (Esegue l'override di ModelingWindowPane.HasSelectableObjects). | |
HasToolBar | Ottiene la finestra degli strumenti e verifica se deve includere una barra degli strumenti. | |
HelpService | Ottiene il servizio della guida. (Ereditato da ModelingWindowPane) | |
InitializationMode | (Ereditato da WindowPane) | |
MenuService | Ottiene il servizio del comando di menu. (Ereditato da ModelingWindowPane) | |
PrimarySelection | Ottiene l'elemento selezionato primario nel riquadro. (Ereditato da ModelingWindowPane) | |
SelectedElements | Ottiene gli elementi selezionati nel riquadro. (Ereditato da ModelingWindowPane) | |
SelectionCount | Ottiene il numero di elementi selezionati nel riquadro. (Ereditato da ModelingWindowPane) | |
SelectionHelpService | Ottiene il servizio della guida di selezione. (Ereditato da ModelingWindowPane) | |
ServiceProvider | Ottiene il provider di servizi che è locale per questo riquadro. (Ereditato da ModelingWindowPane) | |
ToolBarHost | ottiene IVsToolWindowToolbarHost collegare, che determina come barre degli strumenti visualizzati nella finestra degli strumenti. | |
ToolWindowFont | Ottiene il tipo di carattere da utilizzare per la finestra degli strumenti. | |
Window | (Ereditato da WindowPane) | |
WindowTitle | Ottiene il titolo della finestra degli strumenti. |
In alto
Metodi
Nome | Descrizione | |
---|---|---|
CommitPendingEditForCommand | Quando implementato in una classe derivata, specifica se le modifiche in sospeso deve essere eseguito prima che un comando venga eseguito. (Ereditato da ModelingWindowPane) | |
CountAllObjects | Ottiene il numero di elementi nel riquadro. (Ereditato da ModelingWindowPane) | |
CountObjects | Calcola il numero di elementi nel riquadro o nella selezione corrente. (Ereditato da ModelingWindowPane) | |
CountSelectedObjects | Ottiene il numero di elementi nella selezione corrente. (Ereditato da ModelingWindowPane) | |
Dispose() | (Ereditato da WindowPane) | |
Dispose(Boolean) | Rilascia risorse non gestite utilizzate da ToolWindow e facoltativamente dealloca risorse gestite. (Esegue l'override di ModelingWindowPane.Dispose(Boolean)). | |
DoSelectObjects | Quando implementato in una classe derivata, selezionare gli elementi nel riquadro. (Ereditato da ModelingWindowPane) | |
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) | |
GetAllObjects | Ottiene tutti gli elementi nel riquadro. (Ereditato da ModelingWindowPane) | |
GetComponentSelected | Specifica se il componente specificato è selezionata. (Ereditato da ModelingWindowPane) | |
GetContainerSelected | specifica se il contenitore specificato è selezionato. (Ereditato da ModelingWindowPane) | |
GetHashCode | Funge da funzione hash per un determinato tipo. (Ereditato da Object) | |
GetObjects | Ottiene tutti gli elementi che sono attualmente selezionati o gli elementi che possono essere selezionati nel riquadro. (Ereditato da ModelingWindowPane) | |
GetSelectedComponents | Ottiene i componenti che vengono selezionate nel riquadro. (Ereditato da ModelingWindowPane) | |
GetSelectedObjects | Ottiene gli elementi selezionati nel riquadro. (Ereditato da ModelingWindowPane) | |
GetService | Ottiene il servizio del tipo specificato.Eseguire l'override di questo metodo per restituire il servizio personalizzato del comando di menu (Ereditato da ModelingWindowPane) | |
GetSite | ottiene il sito cui è stato impostato con SetSite. (Ereditato da ModelingWindowPane) | |
GetType | Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) | |
Hide | nasconde il riquadro. (Ereditato da ModelingWindowPane) | |
Initialize | Inizializza una nuova istanza di ToolWindow classe. (Esegue l'override di WindowPane.Initialize()). | |
LoadUIState | (Ereditato da WindowPane) | |
MemberwiseClone | Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object) | |
OnAfterToolWindowCreate | inizializzazione di Post-creazione. | |
OnClose | Rimuove gli oggetti riquadro dalla selezione di menu di scelta rapida quando il riquadro è chiuso. (Ereditato da ModelingWindowPane) | |
OnCreate | Crea una finestra degli strumenti. (Esegue l'override di WindowPane.OnCreate()). | |
OnDocumentWindowChanged | Notifica le classi derivate se l'utente apporta una modifica nella finestra del documento. | |
OnSelectionChanged | Notifica ai listener di eventi dopo le modifiche di selezione. (Ereditato da ModelingWindowPane) | |
OnSelectionChanging | Notifica ai listener di eventi prima delle modifiche di selezione. (Ereditato da ModelingWindowPane) | |
OnToolWindowCreate | Ascolto delle modifiche del frame in una finestra di documento | |
PreProcessMessage | Gestisce i messaggi della finestra. (Ereditato da ModelingWindowPane) | |
SaveUIState | (Ereditato da WindowPane) | |
SelectObjects | Selezionare gli elementi nel riquadro. (Ereditato da ModelingWindowPane) | |
SetSelectedComponents(ICollection) | Aggiunta di componenti specificati nel contenitore di selezione e notifica shell della modifica di selezione. (Ereditato da ModelingWindowPane) | |
SetSelectedComponents(ICollection, SelectionTypes) | Non implementato attualmente. (Ereditato da ModelingWindowPane) | |
SetSite | Inizializza il riquadro nell'ambiente. (Ereditato da ModelingWindowPane) | |
Show | Visualizzare il riquadro, lo stato incluso all'inizio e gli reso la finestra attiva. (Ereditato da ModelingWindowPane) | |
ShowNoActivate | Visualizzare il riquadro, lo stato incluso all'inizio, ma gli non resa la finestra attiva. (Ereditato da ModelingWindowPane) | |
ToString | Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
In alto
Eventi
Nome | Descrizione | |
---|---|---|
SelectionChanged | Generato dopo la selezione nel riquadro è stato modificato. (Ereditato da ModelingWindowPane) | |
SelectionChanging | Generato prima della selezione nel riquadro. (Ereditato da ModelingWindowPane) |
In alto
Implementazioni esplicite dell'interfaccia
Nome | Descrizione | |
---|---|---|
IVsWindowPane.ClosePane | Obsoleta. (Ereditato da WindowPane) | |
IVsUIElementPane.CloseUIElementPane | (Ereditato da WindowPane) | |
IVsWindowPane.CreatePaneWindow | Obsoleta. (Ereditato da WindowPane) | |
IVsUIElementPane.CreateUIElementPane | (Ereditato da WindowPane) | |
IOleCommandTarget.Exec | (Ereditato da WindowPane) | |
IVsWindowPane.GetDefaultSize | Obsoleta. (Ereditato da WindowPane) | |
IVsUIElementPane.GetDefaultUIElementSize | (Ereditato da WindowPane) | |
IServiceProvider.GetService | (Ereditato da WindowPane) | |
IVsUIElementPane.LoadUIElementState | (Ereditato da WindowPane) | |
IVsWindowPane.LoadViewState | Obsoleta. (Ereditato da WindowPane) | |
IOleCommandTarget.QueryStatus | (Ereditato da WindowPane) | |
IVsUIElementPane.SaveUIElementState | (Ereditato da WindowPane) | |
IVsWindowPane.SaveViewState | Obsoleta. (Ereditato da WindowPane) | |
IVsWindowPane.SetSite | Obsoleta. (Ereditato da WindowPane) | |
IVsUIElementPane.SetUIElementSite | (Ereditato da WindowPane) | |
IVsWindowPane.TranslateAccelerator | Obsoleta. (Ereditato da WindowPane) | |
IVsUIElementPane.TranslateUIElementAccelerator | (Ereditato da WindowPane) |
In alto
Note
Prima di poter aggiungere una finestra degli strumenti alla finestra di progettazione generata, è necessario registrare la finestra.Per ulteriori informazioni, vedere [Microsoft.VisualStudio.Modeling.Shell.ModelingPackage].
Esempi
Nell'esempio seguente viene aggiunta una finestra degli strumenti chiamata Finestra degli strumenti personalizzata in un progetto di linguaggio specifico di dominio denominato RegisterTools.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 su questa scheda, l'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.DslPackage
{
[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.DslPackage
{
//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.