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


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

Надстройки Visual Studio выступан сопоставления в Visual Studio 2013. Необходимо обновить для надстройки с расширениями VSPackage. Дополнительные сведения об обновлении см. в разделе Часто задаваемые вопросы. Преобразование надстроек в расширения VSPackage.

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

В следующие документы перечислены предопределенные категории параметров, которые включены в Visual Studio.

Для добавления свойств на существующую страницу Параметры или добавления пользовательской страницы в диалоговое окно Параметры воспользуйтесь SDK для Visual Studio. Дополнительные сведения см. на веб-сайте Портал партнера экосистемы средств разработки.

Примечание

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

Чтобы открыть диалоговое окно Параметры в интегрированной среде разработки, в меню Сервис выберите пункт Параметры.

Пример

В следующем примере показано, как просмотреть доступные элементы свойств на вкладке Общие, узел 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-Specific") или DTE.Properties("Environment", "ProjectsAndSolution"). Используемые значения перечислены в начале этого документа.

В следующем примере используется "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-Specific")
    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

См. также

Задачи

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

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

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

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