Partilhar via


Reference.DTE Property

Definition

Gets the top-level extensibility object.

public:
 property EnvDTE::DTE ^ DTE { EnvDTE::DTE ^ get(); };
public:
 property EnvDTE::DTE ^ DTE { EnvDTE::DTE ^ get(); };
[System.Runtime.InteropServices.DispId(1)]
public EnvDTE.DTE DTE { [System.Runtime.InteropServices.DispId(1)] get; }
[<System.Runtime.InteropServices.DispId(1)>]
[<get: System.Runtime.InteropServices.DispId(1)>]
member this.DTE : EnvDTE.DTE
Public ReadOnly Property DTE As DTE

Property Value

DTE

Returns a DTE object.

Attributes

Examples

Sub DTEExample(ByVal dte As DTE2)  

    Dim msg As String = _  
        "The current Output Window object belongs to the "  
    Dim output As OutputWindow = dte.ToolWindows.OutputWindow  

    If IsMacrosIDE(output.DTE) Then  
        MsgBox(msg & "macros IDE.")  
    Else  
        MsgBox(msg & "main IDE.")  
    End If  

    output = CType(dte.MacrosIDE, DTE2).ToolWindows.OutputWindow  

    If IsMacrosIDE(output.DTE) Then  
        MsgBox(msg & "macros IDE.")  
    Else  
        MsgBox(msg & "main IDE.")  
    End If  

End Sub  

Function IsMacrosIDE(ByVal ide As DTE) As Boolean  

    Dim val As Boolean = True  

    Try  
        ' The MacrosIDE property throws an exception if ide   
        ' is not the main DTE object.  
        If IsNothing(ide.MacrosIDE) = False Then  
            val = False  
        End If  

    Catch ex As Exception  
    End Try  

    Return val  

End Function  
public void DTEExample(DTE2 dte)  
{  
    string msg = "The current Output Window object belongs to the ";  
    OutputWindow output = dte.ToolWindows.OutputWindow;  

    if (IsMacrosIDE(output.DTE))  
        MessageBox.Show(msg + "macros IDE.");  
    else  
        MessageBox.Show(msg + "main IDE.");  

    output = ((DTE2)dte.MacrosIDE).ToolWindows.OutputWindow;  

    if (IsMacrosIDE(output.DTE))  
        MessageBox.Show(msg + "macros IDE.");  
    else  
        MessageBox.Show(msg + "main IDE.");  
}  

bool IsMacrosIDE(DTE ide)  
{  
    bool val = true;  

    try  
    {  
        // The MacrosIDE property throws an exception if ide   
        // is not the main DTE object.  
        if (ide.MacrosIDE != null)  
            val = false;  
    }  
    catch (Exception ex)  
    {  
    }  

    return val;  
}  

Remarks

In Visual Studio, the DTE is the root of the automation model, which other object models often call "Application".

Applies to