Kontrolowanie ustawień opcji

Dodatki Visual Studio zostały zaniechane w programie Visual Studio 2013.Dodatki należy uaktualniać do pakietu rozszerzenia VSPackage.Aby uzyskać więcej informacji na temat uaktualniania, zobacz Często zadawane pytania: konwertowanie dodatków na rozszerzenia pakietu VSPackage.

Można napisać kod, aby aktywować lub dezaktywować wiele ustawień na stronach Opcje okna dialogowego (zwanych dalej Opcje strony).Wystarczy użyć właściwości Properties, Value oraz metody Item obiektu DTE w modelu automatyzacji Visual Studio.

[!UWAGA]

Mimo, że do wiele elementów na wielu stronach Opcji można uzyskać dostęp programowy, niektóre strony mogą zawierać elementy, które nie są dostępne.Ponadto, istnieje możliwość, że sama strona Opcje nie jest dostępna.Jeśli nie można wpłynąć na ustawienie przy użyciu modelu automatyzacji, można to zrobić za pomocą Visual Studio SDK.Aby uzyskać więcej informacji zobacz „Dodawanie ustawień do istniejących stron opcji” w dalszej części tego dokumentu.Aby uzyskać listę programowo dostępnych opcji i ich dokładne nazwy, zobacz „Nazwy elementu właściwości” w Określanie nazw elementów właściwości na stronach opcji.

Aby otworzyć okno dialogowe Opcje w zintegrowanym środowisku programistycznym (IDE), w menu Narzędzia, kliknij przycisk Opcje.

Wyświetlanie ustawień opcji

Użyj Properties zbioru i Property obiektu do ustawień dostępu na stronie Opcje.W poniższym przykładzie Visual Studio wyświetla nazwy, bieżące wartości i typy elementów na stronie Dokumenty.

Sub PropertiesExample()
    ' Create and initialize a variable to represent the Documents 
    ' Options page.
    Dim envGenTab As EnvDTE.Properties = _
    DTE.Properties("Environment", "Documents")
    Dim prop As EnvDTE.Property
    Dim msg As String

    ' Loop through each item in the Documents Options box.
    For Each prop In envGenTab
            Try
                msg += ("PROP NAME: " & prop.Name & _ 
                " VALUE: " & prop.Value) & _
                "   TYPE: " & prop.Value.GetType.ToString()) & vbCr
            Catch
            End Try
    Next
    MsgBox(msg)
End Sub

Poniższy przykład wyświetla dostępne właściwości na stronie Opcje dla Listy zadań (pod węzłem Środowisko ).Zawiera również listę dostępnych wartości dla komentarza Lista tokenów.

Sub DisplayProperties()
    ' Variables to represent the properties collection
    ' and each property in the Options dialog box.
    Dim prop As EnvDTE.Property
    Dim props As EnvDTE.Properties
    Dim propVals As Object()
    Dim propVal, msg As String

    ' Represents the Task List Node under the 
    ' Enviroment node.
    props = DTE.Properties("Environment", "TaskList")
    ' Represents the items in the comment Token list
    ' and their priorities (1-3/low-high).
    prop = props.Item("CommentTokens")
    propVals = prop.Value

    Try
        ' List each property name for the Options page
        ' and all of its possible values.
        For Each prop In props
            msg += "PROP NAME: " & prop.Name & vbCr
            For Each propVal In propVals
                msg += "  Value: " & propVal & vbCr
            Next
        Next
        MsgBox(msg)
    Catch ex As System.Exception
        MsgBox("ERROR: " & ex.Message)
    End Try
End Sub

W tym przykładzie przedstawiono ustawienia programowalne strony Opcje dla Formatowania (pod Edytor tekstu, C#).

Sub PropertiesExample()
    ' Create and initialize a variable to represent the C# 
    ' Formatting text editor options page.
    Dim txtEdCSFormat As EnvDTE.Properties = _
    DTE.Properties("TextEditor", "CSharp - Formatting")
    Dim prop As EnvDTE.Property
    Dim msg As String

    ' Loop through each item in the C# Formatting Options page.
    For Each prop In txtEdCSFormat
        msg += ("PROP NAME: " & prop.Name & "   VALUE: " & _
        prop.Value) & vbCr
    Next
    MsgBox(msg)
End Sub

Zmiana ustawień opcji

Nie tylko możesz wyświetlać wartość ustawienia na stronie Opcje, możesz również zmienić wartość.Poniższy przykład Visual Studio demonstruje, jak to zrobić.

[!UWAGA]

Chociaż można zmienić wartości formantów na istniejącej stronie Opcje, nie można dodać, usunąć lub modyfikować żadnych formantów lub ustawień.Aby określić własne ustawienia, należy utworzyć niestandardową stronę Opcje.Aby uzyskać więcej informacji, zobacz Porady: tworzenie niestandardowych stron opcji.

Pierwszy przykład (ToolOpt1) przyłącza wartość logiczną ReuseSavedActiveDocWindow, która jest nazwą Ponowne użytego okna dokumenty, jeśli została zapisana opcja na stronie Dokumenty pod węzłem Środowisk.

Sub ToolOpt1()
    Dim props As EnvDTE.Properties = DTE.Properties("Environment", _
    "Documents")
    Dim prop As EnvDTE.Property

    prop = props.Item("ReuseSavedActiveDocWindow")
    ' If value is TRUE, change it to FALSE, or vice-versa.
    MsgBox("PROP NAME: " & prop.Name & "   VALUE: " & prop.Value)
    prop.Value = Not (prop.Value)
    MsgBox("PROP NAME: " & prop.Name & "   VALUE: " & prop.Value)
    ' Change it to the original value.
    prop.Value = Not (prop.Value)
End Sub

Następujący przykład zmienia, a następnie resetuje Rozmiar tabulatora wartość w sekcji Zakładki strony Podstawowe pod węzłem Edytor tekstu.

Sub ToolOpt2()
    Dim props As EnvDTE.Properties = DTE.Properties("TextEditor", _
    "Basic")
    Dim prop As EnvDTE.Property
    Dim tmp As String

    prop = props.Item("TabSize")
    ' Set a new value for Tab Size.
    MsgBox("PROP NAME: " & prop.Name & "   VALUE: " & prop.Value)
    tmp = prop.Value
    prop.Value = 10
    MsgBox("PROP NAME: " & prop.Name & "   VALUE: " & prop.Value)
    ' Change it back to the original value.
    prop.Value = tmp
    MsgBox("PROP NAME: " & prop.Name & "   VALUE: " & prop.Value)
End Sub

W tym przykładzie zmieni ustawienie na stronie Czcionki i kolory pod węzłem Środowisko.

Sub ToolOpt3()
    ' Changes the background color of text in the Fonts and Colors
    ' page of the Options dialog box on the Tools menu.
    Dim props As EnvDTE.Properties
    Dim prop As EnvDTE.Property
    Dim fontColorItems As EnvDTE.FontsAndColorsItems

    props = DTE.Properties("FontsAndColors", "TextEditor")
    prop = props.Item("FontsAndColorsItems")
    fontColorItems = prop.Object

    Try
        MsgBox("NAME: " & prop.Name & vbCr & "BACKGROUND VALUE: " & _
        CStr(fontColorItems.Item("Plain Text").Background.ToString))
        ' Turn the text background from its current color to red.
        fontColorItems.Item("Plain Text").Background = 255
        MsgBox("NAME: " & prop.Name & vbCr & "BACKGROUND VALUE: " & _
        Hex(fontColorItems.Item("Plain Text").Background.ToString))
    Catch ex As System.Exception
        MsgBox("ERROR: " & ex.Message)
    End Try
End Sub

Ten przykład powoduje włączenie numerowanie kilka języków w węźle Edytor tekstu.

Sub TurnOnLineNumbers()
   DTE.Properties("TextEditor", "Basic").Item("ShowLineNumbers") _
   .Value = True
   DTE.Properties("TextEditor", "PlainText").Item("ShowLineNumbers") _
   .Value = True
   DTE.Properties("TextEditor", "CSharp").Item("ShowLineNumbers") _
   .Value = True
   DTE.Properties("TextEditor", "HTML/XML").Item("ShowLineNumbers") _
   .Value = True
   DTE.Properties("TextEditor", "C/C++").Item("ShowLineNumbers") _
   .Value = True
   DTE.Properties("TextEditor", "Visual JSharp") _
   .Item("ShowLineNumbers").Value = True
End Sub

Dodawanie ustawień do stron istniejących opcji

Nie można użyć Visual Studio modelu automatyzacji, aby dodać ustawienia do istniejącej strony Opcje ani zmienić istniejące ustawienia, aby wprowadzić te zmiany, należy użyć Visual Studio SDK.Aby uzyskać więcej informacji, zobacz Portal partnerów ekosystemu narzędzi rozwoju witryny sieci Web.

Zobacz też

Zadania

Porady: tworzenie niestandardowych stron opcji

Porady: zmienianie charakterystyki okna

Porady: tworzenie dodatku

Wskazówki: tworzenie kreatora

Koncepcje

Wykres modelu obiektów automatyzacji

Inne zasoby

Tworzenie i kontrolowanie okien środowiska

Tworzenie dodatków i kreatorów

Odwołanie do automatyzacji i rozszerzalności