Řízení nastavení možností

Doplňky Visual Studio jsou ve verzi aplikace Visual Studio 2013 zastaralé.Měli byste upgradovat doplňky na rozšíření VSPackage.Další informace o upgradu viz Nejčastější dotazy: Převádění doplňků na rozšíření VSPackage.

Můžete napsat kód, který aktivujte nebo deaktivuje mnoho nastavení na stránkách v dialogovém okně Možnosti (dále jen stránky Možnosti).Stačí použít vlastnost Properties, vlastnost Value a metodu Item objektu DTE v modelu automatizace Visual Studio.

[!POZNÁMKA]

Ačkoli k mnoha položkám na mnoha stránkách Možnosti lze přistupovat programově, některé stránky mohou obsahovat položky, které přístupné být nemohou.Je také možné, že samotná stránka Možnosti není přístupná.Pokud nastavení nemůžete ovlivnit pomocí modelu automatizace, je možné tak učinit pomocí Visual Studio SDK.Další informace naleznete v tématu "Přidání nastavení pro stávající stránky možností" dále v tomto dokumentu.Seznam programově přístupných možností a jejich přesné názvy naleznete v tématu "Názvy vlastností položky" v Určování názvů pr položky vlastností na stránkách možností.

Chcete-li otevřít dialogové okno Možnosti v integrovaném vývojovém prostředí (IDE), v nabídce Nástroje klepněte na tlačítko Možnosti.

Nastavení možností zobrazení

Použijte kolekci Properties a objekt Property pro přístup k nastavení na stránce Možnosti.Následující příklad sady Visual Studio zobrazí názvy, aktuální hodnoty a typy pro položky na stránce 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

Následující příklad zobrazuje vlastnosti k dispozici na stránce Možnosti pro Seznam úkolů (v uzlu Prostředí).Obsahuje také seznam dostupných hodnot pro komentář Seznam tokenů.

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

V tomto příkladu jsou uvedeny programovatelná nastavení stránky Možnosti pro Formátování (v části Textový editor, 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

Změna nastavení možností

Nejen že můžete zobrazit hodnotu nastavení na stránce Možnosti, můžete ji také změnit.Následující příklady sady Visual Studio demonstrují, jak to udělat.

[!POZNÁMKA]

Ačkoli můžete změnit hodnotu ovládacích prvků na stávající stránce Možnosti, nemůžete přidat, odebrat nebo změnit libovolné ovládací prvky nebo nastavení.Chcete-li zadat vlastní nastavení, musíte vytvořit vlastní stránku Možnosti.Další informace naleznete v tématu Postupy: Vytváření vlastních stránek možností.

První příklad (ToolOpt1) přepne booleovskou hodnotu ReuseSavedActiveDocWindow, což je název možnosti Znovu použít aktuální okno dokumentu, pokud je uloženo na stránce Dokumenty v uzlu Prostředí.

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

Následující příklad změny a obnovuje hodnotu Velikost tabulky v části Karty stránky Základní stránky ve uzlu Textový Editor.

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

Tento příklad mění nastavení na stránce Písmo a barvy v uzlu Prostředí.

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

Tento příkladu spustí číslování řádků pro několik jazyků v uzlu Textový editor.

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

Přidání nastavení na existující stránky pro určení možností

Model automatizace Visual Studio nelze použít k přidání nastavení na existující stránku Možnosti ani ke změně existujícího nastavení. Chcete-li provést tento typ změn, je nutné použít Visual Studio SDK.Další informace naleznete na webu Vývojové nástroje ekosystému partnerského portálu.

Viz také

Úkoly

Postupy: Vytváření vlastních stránek možností

Postupy: Změna charakteristik okna

Postupy: Vytvoření doplňku

Návod: Vytvoření průvodce

Koncepty

Graf modelu objektů automatizace

Další zdroje

Vytváření a řízení oken prostředí

Vytváření doplňků a průvodců

Referenční dokumentace automatizace a rozšíření