Поделиться через


Коллекции свойств DTE

Обновлен: Ноябрь 2007

Свойства уровня среды организованы по категориям, соответствующим иерархии, отображаемой в диалоговом окне Параметры. Чтобы открыть это диалоговое окно Параметры, в меню Сервис выберите команду Параметры. Для простоты это диалоговое окно в данном разделе называется "Параметры средств". Например, DTE.Properties("TextEditor", "Basic") представляет параметры узла Базовые в узле Текстовый редактор диалогового окна параметров средств. Во многих случаях параметры в диалоговых окнах также представлены свойствами. Например, один параметр на вкладке "Табуляция" (Параметры, Текстовый редактор, Базовые) называется Размер интервала табуляции. Он представлен свойствами TabSize и TabSize. Каждый элемент свойства имеет одно или несколько значений, представленных свойством Value. Дополнительные сведения об изменении значений параметров с помощью свойств см. в разделе Управление параметрами.

В подразделах, указанных в разделе "См. также" ниже, приводится список предварительно определенных категорий, имеющихся в Visual Studio. Однако пакеты Visual Studio могут добавлять свои категории (страницы параметров средств), и можно создавать собственные пользовательские страницы средств.

ms165641.alert_note(ru-ru,VS.90).gifПримечание.

Некоторые страницы свойств в диалоговом окне Параметры не поддерживают автоматизацию. Страницы свойств, поддерживающие автоматизацию, приведены в разделе Определение имен элементов свойств на страницах параметров.

К одному и тому же объекту коллеции Properties можно получить доступ в различных местах. Например, коллекция свойств для шрифтов и цветов доступна из DTE.Properties("Environment", "FontsAndColors") или DTE.Properties("TextEditor", "FontsAndColors").

Пример

В следующем примере показано, как просмотреть все доступные элементы свойств на вкладке “Общие”, (C#, Текстовый редактор, диалоговое окно "Параметры"). Обратите внимание, что в коде узел "C#" должен быть представлен как "CSharp". Дополнительные сведения о запуске примера надстройки см. в разделе Практическое руководство. Компиляция и выполнение примеров кода модели объектов автоматизации.

' Add-in code.
Public Sub OnConnection(ByVal application As Object, ByVal connectMode _
As Extensibility.ext_ConnectMode, ByVal addInInst As Object, ByRef _
custom As System.Array) Implements Extensibility.IDTExtensibility2.OnConnection

    applicationObject = CType(application, EnvDTE.DTE)
    addInInstance = CType(addInInst, EnvDTE.AddIn)
    ' Pass the applicationObject member variable to the code example.
    PropertiesExample (applicationObject)
    End Sub

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

    ' Loop through each item in the C# text editor options page. 
    For Each prop In txtEdCS
        msg += ("PROP NAME: " & prop.Name & "   VALUE: " & _
        prop.Value) & vbCr
    Next
    MsgBox(msg)
End Sub
// Add-in code.
Using System.Windows.Forms;
public void OnConnection(object application,
 Extensibility.ext_ConnectMode connectMode, object addInInst,
 ref System.Array custom)
{
    applicationObject = (_DTE)application;
    addInInstance = (AddIn)addInInst;
    // Pass the applicationObject member variable to the code example.
    PropertiesExample((DTE)applicationObject); 
}

public void PropertiesExample( DTE dte ) 
{ 
    // Create and initialize a variable to represent the C# 
    // text editor options page.
    EnvDTE.Properties txtEdCS =
 dte.get_Properties( "TextEditor", "CSharp" ); 
    EnvDTE.Property prop = null; 
    string msg = null; 

    // Loop through each item in the C# text editor options page. 
    foreach ( EnvDTE.Property temp in txtEdCS ) 
    { 
        prop = temp; 
        msg += ( "PROP NAME: " + prop.Name + "   VALUE: " 
+ prop.Value ) + "\n"; 
    }
    MessageBox.Show( msg); 
}

Незначительное изменение в приведенном выше коде позволит просмотреть параметры вложенного узла — в следующем случае это страница "Форматирование", (C#, Текстовый редактор, Параметры). Для этого необходимо изменить значение второго параметра Properties на параметры, которые необходимо просмотреть или изменить, такие как DTE.Properties("TextEditor", "Basic - Tabs") или DTE.Properties("Environment", "Help - Online"). Используемые значения перечислены в начале этого раздела.

В следующем примере используется "CSharp - Formatting" для просмотра значений параметров Форматирования для текстового редактора C#.

' Add-in code.
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

См. также

Задачи

Практическое руководство. Создание пользовательских страниц параметров меню "Сервис"

Основные понятия

Управление параметрами

Определение имен элементов свойств на страницах параметров

Страница “Параметры”, свойства узла “Среда”

Страница "Параметры", свойства узла "Шрифты и цвета"

Страница "Параметры"", свойства узла "Текстовый редактор"

Ссылки

Страница "Форматирование", папка "C#", папка "Текстовый редактор", диалоговое окно "Параметры"