다음을 통해 공유


DTE 속성 컬렉션

업데이트: 2007년 11월

환경 수준 속성은 옵션 대화 상자에 표시되는 계층에 해당하는 범주로 구성됩니다. 옵션 대화 상자를 표시하려면 도구 메뉴에서 옵션을 클릭합니다. 편의를 위해 이 항목에서는 이 대화 상자를 도구 옵션 대화 상자라고 합니다. 예를 들어, DTE.Properties("TextEditor", "Basic")는 도구 옵션 대화 상자에 있는 텍스트 편집기 노드 내의 기본 노드에 있는 설정을 나타냅니다. 많은 경우에 대화 상자의 설정은 속성을 통해서도 나타납니다. 예를 들어, 옵션 대화 상자, 텍스트 편집기, 기본, 탭에 있는 설정 중 하나는 탭 크기입니다. 이 설정은 TabSizeTabSize 속성으로 나타납니다. 각 속성 항목에는 Value 속성에 의해 표시되는 하나 이상의 값이 있습니다. 속성을 사용하여 옵션 값을 변경하는 방법에 대한 자세한 내용은 옵션 설정 제어를 참조하십시오.

아래의 참고 항목 부분에 나열된 항목에는 Visual Studio에서 제공하는 미리 정의된 범주가 나와 있습니다. 그러나 Visual Studio 패키지는 고유의 범주(도구 옵션 페이지)를 추가할 수 있으며 사용자가 자신만의 사용자 지정 도구 옵션 페이지를 만들 수 있습니다.

참고:

옵션 대화 상자의 일부 속성 페이지에서는 자동화를 지원하지 않습니다. 자동화를 지원하지 않는 속성 페이지는 옵션 페이지에서 속성 항목의 이름 확인에 나열되어 있습니다.

동일한 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#, 서식에서 중첩 노드의 옵션을 볼 수 있습니다. 이를 위해서는 보거나 변경하려는 옵션(예: DTE.Properties("TextEditor", "Basic - Tabs") 또는 DTE.Properties("Environment", "Help - Online"))으로 두 번째 Properties 매개 변수 값을 변경합니다. 사용할 값이 이 항목의 시작 부분에 나열되어 있습니다.

여기에서는 "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#, 서식