Klasa ToolWindow
Po zastąpieniu w klasie pochodnej, reprezentuje okno narzędzi w Projektancie wygenerowany dla języka specyficznego dla domeny.
Ten interfejs API nie jest zgodny ze specyfikacją CLS.
Hierarchia dziedziczenia
System.Object
Microsoft.VisualStudio.Shell.WindowPane
Microsoft.VisualStudio.Modeling.Shell.ModelingWindowPane
Microsoft.VisualStudio.Modeling.Shell.ToolWindow
Microsoft.VisualStudio.Modeling.Shell.ModelExplorerToolWindow
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)> _
Public MustInherit Class ToolWindow _
Inherits ModelingWindowPane
[CLSCompliantAttribute(false)]
public abstract class ToolWindow : ModelingWindowPane
Typ ToolWindow uwidacznia następujące elementy członkowskie.
Konstruktorzy
Nazwa | Opis | |
---|---|---|
ToolWindow | Inicjuje nowe wystąpienie klasy ToolWindow. |
Początek
Właściwości
Nazwa | Opis | |
---|---|---|
ActiveInPlaceEditWindow | Pobiera i ustawia aktywne okno do edycji na miejscu. (Odziedziczone z ModelingWindowPane). | |
BitmapIndex | Kiedy nadpisane w klasie pochodnej, pobiera indeks mapy bitowej, który pojawia się obok nazwy w oknie Narzędzie. | |
BitmapResource | Kiedy nadpisane w klasie pochodnej, pobiera identyfikator zasobu mapy bitowej, który pojawia się obok nazwy w oknie Narzędzie. | |
Content | (Odziedziczone z WindowPane). | |
DocData | Pobiera dokument w pamięci. | |
EnableUndo | W oknie Narzędzie pobiera i umożliwia Cofnij polecenia. | |
Frame | Pobiera IVsWindowFrame , który odpowiada to okno... (Odziedziczone z ModelingWindowPane). | |
HasSelectableObjects | Pobiera wyłącza okno narzędzia Zaznacz obiekty polecenia, jeśli dokument nie jest załadowany. (Zastępuje ModelingWindowPane.HasSelectableObjects). | |
HasToolBar | Pobiera okno narzędzia i sprawdza, czy powinien mieć pasek narzędzi. | |
HelpService | Pobiera usługi pomocy. (Odziedziczone z ModelingWindowPane). | |
InitializationMode | (Odziedziczone z WindowPane). | |
MenuService | Pobiera usługi poleceń menu. (Odziedziczone z ModelingWindowPane). | |
PrimarySelection | Pobiera podstawowego elementu wybranego w okienku. (Odziedziczone z ModelingWindowPane). | |
SelectedElements | Pobiera elementy, które są zaznaczone w okienku. (Odziedziczone z ModelingWindowPane). | |
SelectionCount | Pobiera liczbę elementów, które są zaznaczone w okienku. (Odziedziczone z ModelingWindowPane). | |
SelectionHelpService | Pobiera usługi pomocy zaznaczenia. (Odziedziczone z ModelingWindowPane). | |
ServiceProvider | Pobiera usługodawca, lokalne do tego okienka. (Odziedziczone z ModelingWindowPane). | |
ToolBarHost | Pobiera IVsToolWindowToolbarHost interfejs, który określa sposób wyświetlania pasków narzędzi w oknie narzędzia. | |
ToolWindowFont | Pobiera czcionki w oknie narzędzia. | |
Window | (Odziedziczone z WindowPane). | |
WindowTitle | Pobiera tytuł okna narzędzia. |
Początek
Metody
Nazwa | Opis | |
---|---|---|
CommitPendingEditForCommand | Po wdrożeniu w klasie pochodnej, określa, czy do czasu edycji powinny być zatwierdzane przed wykonaniem polecenia. (Odziedziczone z ModelingWindowPane). | |
CountAllObjects | Zwraca liczbę elementów w okienku. (Odziedziczone z ModelingWindowPane). | |
CountObjects | Zlicza liczbę elementów w okienku lub w bieżącym zaznaczeniu. (Odziedziczone z ModelingWindowPane). | |
CountSelectedObjects | Zwraca liczbę elementów w bieżącym zaznaczeniu. (Odziedziczone z ModelingWindowPane). | |
Dispose() | (Odziedziczone z WindowPane). | |
Dispose(Boolean) | Zwalnia niezarządzanych zasoby używane przez ToolWindow i opcjonalnie zwalnia zarządzanych zasobów. (Zastępuje ModelingWindowPane.Dispose(Boolean)). | |
DoSelectObjects | Po wdrożeniu w klasie pochodnej, wybiera elementy w okienku. (Odziedziczone z ModelingWindowPane). | |
Equals | Określa, czy określony obiekt jest równy bieżącemu obiektowi. (Odziedziczone z Object). | |
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). | |
GetAllObjects | Pobiera wszystkie elementy w okienku. (Odziedziczone z ModelingWindowPane). | |
GetComponentSelected | Określa, czy dany składnik jest zaznaczony. (Odziedziczone z ModelingWindowPane). | |
GetContainerSelected | Określa, czy dany kontener jest zaznaczony. (Odziedziczone z ModelingWindowPane). | |
GetHashCode | Służy jako domyślnej funkcji mieszania. (Odziedziczone z Object). | |
GetObjects | Pobiera elementy, które są obecnie zaznaczone lub elementów, które można zaznaczać w okienku. (Odziedziczone z ModelingWindowPane). | |
GetSelectedComponents | Pobiera składniki, które są zaznaczone w okienku. (Odziedziczone z ModelingWindowPane). | |
GetSelectedObjects | Pobiera elementy, które są zaznaczone w okienku. (Odziedziczone z ModelingWindowPane). | |
GetService | Pobiera usługi określonego typu.Zastąpienie tej metody, aby przywrócić usługę polecenia menu niestandardowego (Odziedziczone z ModelingWindowPane). | |
GetSite | Pobiera witryny, która została ustawiona za pomocą SetSite. (Odziedziczone z ModelingWindowPane). | |
GetType | Pobiera Type bieżącego wystąpienia. (Odziedziczone z Object). | |
Hide | Ukrywa okienko. (Odziedziczone z ModelingWindowPane). | |
Initialize | Inicjuje nowe wystąpienie klasy ToolWindow. (Zastępuje WindowPane.Initialize()). | |
LoadUIState | (Odziedziczone z WindowPane). | |
MemberwiseClone | Tworzy kopię płytkie bieżące Object. (Odziedziczone z Object). | |
OnAfterToolWindowCreate | Inicjalizacja POST-Creation. | |
OnClose | Usuwa obiekty w okienku okna z zaznaczenia menu skrótów po zamknięciu okienko. (Odziedziczone z ModelingWindowPane). | |
OnCreate | Tworzy okno narzędzia. (Zastępuje WindowPane.OnCreate()). | |
OnDocumentWindowChanged | Powiadamia klas pochodnych, jeśli użytkownik nie dokona zmian w oknie dokumentu. | |
OnSelectionChanged | Powiadamia detektory zdarzeń po zmianie zaznaczenia. (Odziedziczone z ModelingWindowPane). | |
OnSelectionChanging | Powiadamia detektory zdarzeń przed zmianami wyboru. (Odziedziczone z ModelingWindowPane). | |
OnToolWindowCreate | Wykrywa zmiany ramki w oknie dokumentu | |
PreProcessMessage | Obsługuje okno wiadomości. (Odziedziczone z ModelingWindowPane). | |
SaveUIState | (Odziedziczone z WindowPane). | |
SelectObjects | Wybiera elementy w okienku. (Odziedziczone z ModelingWindowPane). | |
SetSelectedComponents(ICollection) | Dodaje określone elementy do pojemnika zaznaczenia i powiadamia powłoki zmianie wyboru. (Odziedziczone z ModelingWindowPane). | |
SetSelectedComponents(ICollection, SelectionTypes) | Aktualnie nie zaimplementowane. (Odziedziczone z ModelingWindowPane). | |
SetSite | Inicjuje okienko w środowisku. (Odziedziczone z ModelingWindowPane). | |
Show | Wyświetla okienko, przesuwa go na wierzch i sprawia, że aktywne okno. (Odziedziczone z ModelingWindowPane). | |
ShowNoActivate | Wyświetla okienko, przesuwa go na wierzch, ale nie ma go aktywnego okna. (Odziedziczone z ModelingWindowPane). | |
ToString | Zwraca ciąg, który reprezentuje bieżący obiekt. (Odziedziczone z Object). |
Początek
Zdarzenia
Nazwa | Opis | |
---|---|---|
SelectionChanged | Uruchamiany po zmianie zaznaczenia w okienku. (Odziedziczone z ModelingWindowPane). | |
SelectionChanging | Wywoływane przed zaznaczeniem w okienku zmieni się okna. (Odziedziczone z ModelingWindowPane). |
Początek
Jawne implementacje interfejsu
Nazwa | Opis | |
---|---|---|
IVsWindowPane.ClosePane | Nieaktualne. (Odziedziczone z WindowPane). | |
IVsUIElementPane.CloseUIElementPane | (Odziedziczone z WindowPane). | |
IVsWindowPane.CreatePaneWindow | Nieaktualne. (Odziedziczone z WindowPane). | |
IVsUIElementPane.CreateUIElementPane | (Odziedziczone z WindowPane). | |
IOleCommandTarget.Exec | (Odziedziczone z WindowPane). | |
IVsWindowPane.GetDefaultSize | Nieaktualne. (Odziedziczone z WindowPane). | |
IVsUIElementPane.GetDefaultUIElementSize | (Odziedziczone z WindowPane). | |
IServiceProvider.GetService | (Odziedziczone z WindowPane). | |
IVsUIElementPane.LoadUIElementState | (Odziedziczone z WindowPane). | |
IVsWindowPane.LoadViewState | Nieaktualne. (Odziedziczone z WindowPane). | |
IOleCommandTarget.QueryStatus | (Odziedziczone z WindowPane). | |
IVsUIElementPane.SaveUIElementState | (Odziedziczone z WindowPane). | |
IVsWindowPane.SaveViewState | Nieaktualne. (Odziedziczone z WindowPane). | |
IVsWindowPane.SetSite | Nieaktualne. (Odziedziczone z WindowPane). | |
IVsUIElementPane.SetUIElementSite | (Odziedziczone z WindowPane). | |
IVsWindowPane.TranslateAccelerator | Nieaktualne. (Odziedziczone z WindowPane). | |
IVsUIElementPane.TranslateUIElementAccelerator | (Odziedziczone z WindowPane). |
Początek
Uwagi
Przed dodaniem okno narzędzia do projektowania wygenerowany, należy zarejestrować okna.Aby uzyskać więcej informacji, zobacz ModelingPackage.
Przykłady
W następującym przykładzie dodano okno Narzędzie o nazwie Okno narzędzia niestandardowe do projektu języka specyficznego dla domeny o nazwie RegisterTools.Po otwarciu projektu w Projektancie wygenerowany kartę to okno pojawia się obok Solution Explorer.Po kliknięciu na tej karcie etykiety który odczytuje to okno narzędzi niestandardowych pojawia się w środku okna narzędzia.
Ten kod rejestruje okno 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.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));
}
}
}
Ten kod zawiera definicję okno 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.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; }
}
}
}
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.