Udostępnij za pośrednictwem


Jak: Zmienianie właściwości okna

System Windows w Visual Studio są reprezentowane w modelu automatyzacji przez Window2 obiektu.Przy użyciu swoich członków, można manipulować właściwości okna, takie jak szerokość, wysokość, widoczność i tak dalej.Za pomocą Window2 kolekcji, można utworzyć okna połączonego, który składa się z dwóch lub więcej okien narzędzie, zadokowane razem.Ich członków umożliwiają również dodatkowe okna, aby zadokować lub oddokować dodatkowych okien z ramki.

[!UWAGA]

Windows, które mają być połączone, muszą być widoczne.Albo okno jest ukryte, pojawi się wyjątek.System windows można wyświetlić za pomocą Visible właściwości.

Windows2 Kolekcji umożliwia również utworzyć własne narzędzie windows.Aby uzyskać więcej informacji, zobacz Jak: tworzenie i sterowanie narzędzie Windows.

[!UWAGA]

Okien dialogowych i poleceń menu, którą widzisz mogą różnić się od tych opisanych w pomocy, w zależności od tego, aktywne ustawienia lub edition.Procedury te zostały opracowane z ogólnych ustawień rozwoju aktywnych.Aby zmienić ustawienia, wybierz polecenie przywóz i wywózUstawienia na Narzędzia menu.Aby uzyskać więcej informacji, zobacz Visual Studio, ustawienia.

Przykład

Następujące przykłady przedstawiają sposób odniesienie i zaznaczać narzędzia systemu windows za pomocą różnych członków modelu automatyzacji.Tworzenie okna narzędzia połączone i wstawić dwa Visual Studio narzędzie systemu windows, a mianowicie Solution Explorer i danych wyjściowych okna, łącząc je razem.Przedstawiają także jak rozmiar i oddokować narzędzie systemu windows.Przed uruchomieniem tego kodu, upewnij się, że właściwość "Osadzić typy współdziałania z modelem" zgromadzenia EnvDTE odwołanie na wartość False. Aby uzyskać więcej informacji na temat uruchamiać kod przykładowy w dodatku, zobacz Jak: skompilować i uruchomić przykłady kodu modelu obiektu automatyzacji.

Informacje dotyczące przestrogiPrzestroga

Uruchomione w tym przykładzie spowoduje zmianę bieżącym Visual Studio układ okna narzędzia.

Public Sub OnConnection(ByVal application As Object, ByVal _
  connectMode As ext_ConnectMode, ByVal addInInst As Object, _
  ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
    chgWindow(_applicationObject)
End Sub

Public Sub chgWindow(ByVal dte As DTE2)
    ' Create variables for the various tool windows.
    Dim winFrame As EnvDTE80.Window2
    Dim win1 As Window = _
      dte.Windows.Item(Constants.vsWindowKindSolutionExplorer)
    Dim win2 As Window = dte.Windows. _
    Item(Constants.vsWindowKindOutput)
    Dim win3 As Window = dte.Windows. _
    Item(Constants.vsWindowKindCommandWindow)

    ' Create a linked window frame and dock Solution 
    ' Explorer and the Ouput window together inside it.
    winFrame = CType(dte.Windows.CreateLinkedWindowFrame(win1, win2, _
      vsLinkedWindowType.vsLinkedWindowTypeDocked), Window2)
    MsgBox("Total number of windows in the linked window frame: " & _
    winFrame.LinkedWindows.Count)

    ' Add another tool window, the Command window, to the frame 
    ' with the other two.
    winFrame.LinkedWindows.Add(win3)
    MsgBox("Total number of windows in the linked window frame: " & _
    winFrame.LinkedWindows.Count)

    ' Resize the entire linked window frame.
    winFrame.Width = 500
    winFrame.Height = 600
    MsgBox("Frame height and width changed. Now changing Command _
      window height.")

    ' Resize the height of the Command window.
    winFrame.LinkedWindows.Item(3).Height = 800
    MsgBox("Now undocking the Command window from the frame.")

    ' Undock the Command window from the frame.
    winFrame.LinkedWindows.Remove(win3)
End Sub
public void OnConnection(object application, ext_ConnectMode 
  connectMode, object addInInst, ref Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    chgWindow(_applicationObject);
}

public void chgWindow(DTE2 dte)
{
    // Create variables for the various tool windows.
    EnvDTE80.Window2 winFrame;
    Window win1 = 
      dte.Windows.Item(Constants.vsWindowKindSolutionExplorer);
    Window win2 = dte.Windows.Item(Constants.vsWindowKindOutput);
    Window win3 = 
      dte.Windows.Item(Constants.vsWindowKindCommandWindow);

    // Create a linked window frame and dock Solution 
    // Explorer and the Ouput window together inside it.
    winFrame = (Window2)dte.Windows.CreateLinkedWindowFrame(win1, win2, 
      vsLinkedWindowType.vsLinkedWindowTypeDocked);
    System.Windows.Forms.MessageBox.Show("Total number of windows in 
      the linked window frame: " + winFrame.LinkedWindows.Count);

    // Add another tool window, the Command window, to the frame 
    // with the other two.
    winFrame.LinkedWindows.Add(win3);
    System.Windows.Forms.MessageBox.Show(
      "Total number of windows in the linked window frame: " + 
      winFrame.LinkedWindows.Count);

    // Resize the entire linked window frame.
    winFrame.Width = 500;
    winFrame.Height = 600;
    System.Windows.Forms.MessageBox.Show(
      "Frame height and width changed." +
      "Now changing Command window height.");

    // Resize the height of the Command window.
    winFrame.LinkedWindows.Item(3).Height = 800;
    System.Windows.Forms.MessageBox.Show(
      "Now undocking the Command window from the frame.");

    // Undock the Command window from the frame.
    winFrame.LinkedWindows.Remove(win3);
}

Zobacz też

Zadania

Jak: tworzenie i sterowanie narzędzie Windows

Jak: Tworzenie dodatku

Instruktaż: Tworzenie kreatora

Koncepcje

Wykres modelu obiektu automatyzacji

Inne zasoby

Tworzenia i kontrolowania środowisku systemu Windows.

Tworzenie dodatków i kreatorów

Automatyzacja i rozszerzalność odniesienia