Udostępnij za pośrednictwem


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
Metoda chroniona ToolWindow Inicjuje nowe wystąpienie klasy ToolWindow.

Początek

Właściwości

  Nazwa Opis
Właściwość publiczna ActiveInPlaceEditWindow Pobiera i ustawia aktywne okno do edycji na miejscu. (Odziedziczone z ModelingWindowPane).
Właściwość chroniona BitmapIndex Kiedy nadpisane w klasie pochodnej, pobiera indeks mapy bitowej, który pojawia się obok nazwy w oknie Narzędzie.
Właściwość chroniona BitmapResource Kiedy nadpisane w klasie pochodnej, pobiera identyfikator zasobu mapy bitowej, który pojawia się obok nazwy w oknie Narzędzie.
Właściwość publiczna Content (Odziedziczone z WindowPane).
Właściwość publiczna DocData Pobiera dokument w pamięci.
Właściwość chroniona EnableUndo W oknie Narzędzie pobiera i umożliwia Cofnij polecenia.
Właściwość publiczna Frame Pobiera IVsWindowFrame , który odpowiada to okno... (Odziedziczone z ModelingWindowPane).
Właściwość chroniona HasSelectableObjects Pobiera wyłącza okno narzędzia Zaznacz obiekty polecenia, jeśli dokument nie jest załadowany. (Zastępuje ModelingWindowPane.HasSelectableObjects).
Właściwość chroniona HasToolBar Pobiera okno narzędzia i sprawdza, czy powinien mieć pasek narzędzi.
Właściwość chroniona HelpService Pobiera usługi pomocy. (Odziedziczone z ModelingWindowPane).
Właściwość chroniona InitializationMode (Odziedziczone z WindowPane).
Właściwość publiczna MenuService Pobiera usługi poleceń menu. (Odziedziczone z ModelingWindowPane).
Właściwość publiczna PrimarySelection Pobiera podstawowego elementu wybranego w okienku. (Odziedziczone z ModelingWindowPane).
Właściwość chroniona SelectedElements Pobiera elementy, które są zaznaczone w okienku. (Odziedziczone z ModelingWindowPane).
Właściwość publiczna SelectionCount Pobiera liczbę elementów, które są zaznaczone w okienku. (Odziedziczone z ModelingWindowPane).
Właściwość chroniona SelectionHelpService Pobiera usługi pomocy zaznaczenia. (Odziedziczone z ModelingWindowPane).
Właściwość chroniona ServiceProvider Pobiera usługodawca, lokalne do tego okienka. (Odziedziczone z ModelingWindowPane).
Właściwość chroniona ToolBarHost Pobiera IVsToolWindowToolbarHost interfejs, który określa sposób wyświetlania pasków narzędzi w oknie narzędzia.
Właściwość chroniona ToolWindowFont Pobiera czcionki w oknie narzędzia.
Właściwość publiczna Window (Odziedziczone z WindowPane).
Właściwość publiczna WindowTitle Pobiera tytuł okna narzędzia.

Początek

Metody

  Nazwa Opis
Metoda chroniona CommitPendingEditForCommand Po wdrożeniu w klasie pochodnej, określa, czy do czasu edycji powinny być zatwierdzane przed wykonaniem polecenia. (Odziedziczone z ModelingWindowPane).
Metoda chroniona CountAllObjects Zwraca liczbę elementów w okienku. (Odziedziczone z ModelingWindowPane).
Metoda publiczna CountObjects Zlicza liczbę elementów w okienku lub w bieżącym zaznaczeniu. (Odziedziczone z ModelingWindowPane).
Metoda chroniona CountSelectedObjects Zwraca liczbę elementów w bieżącym zaznaczeniu. (Odziedziczone z ModelingWindowPane).
Metoda publiczna Dispose() (Odziedziczone z WindowPane).
Metoda chroniona Dispose(Boolean) Zwalnia niezarządzanych zasoby używane przez ToolWindow i opcjonalnie zwalnia zarządzanych zasobów. (Zastępuje ModelingWindowPane.Dispose(Boolean)).
Metoda chroniona DoSelectObjects Po wdrożeniu w klasie pochodnej, wybiera elementy w okienku. (Odziedziczone z ModelingWindowPane).
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 chroniona GetAllObjects Pobiera wszystkie elementy w okienku. (Odziedziczone z ModelingWindowPane).
Metoda publiczna GetComponentSelected Określa, czy dany składnik jest zaznaczony. (Odziedziczone z ModelingWindowPane).
Metoda publiczna GetContainerSelected Określa, czy dany kontener jest zaznaczony. (Odziedziczone z ModelingWindowPane).
Metoda publiczna GetHashCode Służy jako domyślnej funkcji mieszania. (Odziedziczone z Object).
Metoda publiczna GetObjects Pobiera elementy, które są obecnie zaznaczone lub elementów, które można zaznaczać w okienku. (Odziedziczone z ModelingWindowPane).
Metoda publiczna GetSelectedComponents Pobiera składniki, które są zaznaczone w okienku. (Odziedziczone z ModelingWindowPane).
Metoda chroniona GetSelectedObjects Pobiera elementy, które są zaznaczone w okienku. (Odziedziczone z ModelingWindowPane).
Metoda chroniona GetService Pobiera usługi określonego typu.Zastąpienie tej metody, aby przywrócić usługę polecenia menu niestandardowego (Odziedziczone z ModelingWindowPane).
Metoda publiczna GetSite Pobiera witryny, która została ustawiona za pomocą SetSite. (Odziedziczone z ModelingWindowPane).
Metoda publiczna GetType Pobiera Type bieżącego wystąpienia. (Odziedziczone z Object).
Metoda publiczna Hide Ukrywa okienko. (Odziedziczone z ModelingWindowPane).
Metoda chroniona Initialize Inicjuje nowe wystąpienie klasy ToolWindow. (Zastępuje WindowPane.Initialize()).
Metoda publiczna LoadUIState (Odziedziczone z WindowPane).
Metoda chroniona MemberwiseClone Tworzy kopię płytkie bieżące Object. (Odziedziczone z Object).
Metoda chroniona OnAfterToolWindowCreate Inicjalizacja POST-Creation.
Metoda chroniona OnClose Usuwa obiekty w okienku okna z zaznaczenia menu skrótów po zamknięciu okienko. (Odziedziczone z ModelingWindowPane).
Metoda chroniona OnCreate Tworzy okno narzędzia. (Zastępuje WindowPane.OnCreate()).
Metoda chroniona OnDocumentWindowChanged Powiadamia klas pochodnych, jeśli użytkownik nie dokona zmian w oknie dokumentu.
Metoda chroniona OnSelectionChanged Powiadamia detektory zdarzeń po zmianie zaznaczenia. (Odziedziczone z ModelingWindowPane).
Metoda chroniona OnSelectionChanging Powiadamia detektory zdarzeń przed zmianami wyboru. (Odziedziczone z ModelingWindowPane).
Metoda chroniona OnToolWindowCreate Wykrywa zmiany ramki w oknie dokumentu
Metoda chroniona PreProcessMessage Obsługuje okno wiadomości. (Odziedziczone z ModelingWindowPane).
Metoda publiczna SaveUIState (Odziedziczone z WindowPane).
Metoda publiczna SelectObjects Wybiera elementy w okienku. (Odziedziczone z ModelingWindowPane).
Metoda publiczna SetSelectedComponents(ICollection) Dodaje określone elementy do pojemnika zaznaczenia i powiadamia powłoki zmianie wyboru. (Odziedziczone z ModelingWindowPane).
Metoda publiczna SetSelectedComponents(ICollection, SelectionTypes) Aktualnie nie zaimplementowane. (Odziedziczone z ModelingWindowPane).
Metoda publiczna SetSite Inicjuje okienko w środowisku. (Odziedziczone z ModelingWindowPane).
Metoda publiczna Show Wyświetla okienko, przesuwa go na wierzch i sprawia, że aktywne okno. (Odziedziczone z ModelingWindowPane).
Metoda publiczna ShowNoActivate Wyświetla okienko, przesuwa go na wierzch, ale nie ma go aktywnego okna. (Odziedziczone z ModelingWindowPane).
Metoda publiczna ToString Zwraca ciąg, który reprezentuje bieżący obiekt. (Odziedziczone z Object).

Początek

Zdarzenia

  Nazwa Opis
Zdarzenie publiczne SelectionChanged Uruchamiany po zmianie zaznaczenia w okienku. (Odziedziczone z ModelingWindowPane).
Zdarzenie publiczne SelectionChanging Wywoływane przed zaznaczeniem w okienku zmieni się okna. (Odziedziczone z ModelingWindowPane).

Początek

Jawne implementacje interfejsu

  Nazwa Opis
Jawna implementacja interfejsuMetoda prywatna IVsWindowPane.ClosePane Nieaktualne. (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IVsUIElementPane.CloseUIElementPane (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IVsWindowPane.CreatePaneWindow Nieaktualne. (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IVsUIElementPane.CreateUIElementPane (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IOleCommandTarget.Exec (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IVsWindowPane.GetDefaultSize Nieaktualne. (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IVsUIElementPane.GetDefaultUIElementSize (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IServiceProvider.GetService (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IVsUIElementPane.LoadUIElementState (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IVsWindowPane.LoadViewState Nieaktualne. (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IOleCommandTarget.QueryStatus (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IVsUIElementPane.SaveUIElementState (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IVsWindowPane.SaveViewState Nieaktualne. (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IVsWindowPane.SetSite Nieaktualne. (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IVsUIElementPane.SetUIElementSite (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna IVsWindowPane.TranslateAccelerator Nieaktualne. (Odziedziczone z WindowPane).
Jawna implementacja interfejsuMetoda prywatna 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.

Zobacz też

Informacje

Przestrzeń nazw Microsoft.VisualStudio.Modeling.Shell