Compartilhar via


Controlando as configurações de opções

Você pode escrever código para ativar ou desativar muitas das configurações em páginas na caixa de diálogo de Opções (referida assim por diante como páginas das opções).Use apenas a propriedade de Properties , a propriedade de Value , e o método de Item do objeto de DTE no modelo de automação de Visual Studio .

ObservaçãoObservação

Embora muitos itens em muitas páginas de Opções possam ser acessados por meio de programação, determinadas páginas podem conter itens que não podem ser acessados.Além disso, é possível que uma página própria de Opções não é acessível.Se você não pode afetar uma configuração usando o modelo de automação, você poderá fazer isso usando SDK do Visual Studio.Para obter mais informações, consulte “adicionar configurações em padrões existentes página” posteriormente neste documento.Para obter uma lista de opções programaticamente acessíveis e seus nomes exatos, consulte “nomes de item de propriedade” em Determinando os nomes dos itens de propriedade nas páginas de opções.

Para abrir a caixa de diálogo de Opções no ambiente de desenvolvimento integrado (IDE), no menu de Ferramentas , clique Opções.

Exibindo as configurações de opções

Use a coleção de Properties e o objeto de Property para as configurações de acesso em uma página de Opções .O exemplo do Visual Studio exibe os nomes, os valores atuais, e os tipos dos itens na página de Documentos .

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

O exemplo a seguir exibe as propriedades disponíveis na página de Opções para Lista de Tarefas (sob o nó de Ambiente ).Também lista os valores disponíveis para o Lista de tokenscomentário.

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

Este exemplo lista as configurações programáveis para a página de Opções para Formatação (em Editor de Texto, 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

Alterando as configurações de opções

Não só você pode exibir o valor de uma configuração em um página de Opções , você também pode alterar o valor.Os exemplos do Visual Studio demonstram como fazer isso.

ObservaçãoObservação

Embora você possa alterar o valor dos controles em uma página existente de Opções , você não pode adicionar, remover, não nem modificam alguns dos controles ou de configurações.Para especificar suas próprias configurações, você deve criar uma página de Opções personalizado.Para obter mais informações, consulte Como: criar páginas de opções personalizadas.

O primeiro exemplo ToolOpt1 () ativa /desativar o valor Booleano de ReuseSavedActiveDocWindow, que é o nome padrão de Reutilizar a janela do documento atual, se tiver sido salva na página de Documentos sob o nó de Ambiente .

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

O exemplo a seguir altera e redefina o valor de Tamanho da tabulação na seção de Guias da página de Básico sob o nó de Editor de Texto .

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

Este exemplo altera uma configuração na página de Fontes e Cores sob o nó de Ambiente .

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

Este exemplo ativa a linha numeração para vários idiomas no nó de Editor de Texto .

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

Adicionando configurações para páginas existentes de opções

Você não pode usar o modelo de automação de Visual Studio para adicionar configurações para uma página existente de Opções ou às configurações existentes de alteração, para fazer esses tipos de alterações, você deve usar SDK do Visual Studio.Para obter mais informações, consulte Portal de parceiro de ecossistema de ferramentas de desenvolvimento o site.

Consulte também

Tarefas

Como: criar páginas de opções personalizadas

Como: alterar as características da janela

Como: criar um suplemento

Passo a passo: Criando um assistente

Conceitos

Gráfico de modelo de objeto de automação

Outros recursos

Criar e controlar o ambiente Windows

A criação de suplementos e assistentes

Automação e extensibilidade referência