Condividi tramite


Metodo Window2.Activate

Sposta lo stato attivo sull'elemento corrente.

Spazio dei nomi:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

Sintassi

'Dichiarazione
Sub Activate
void Activate()
void Activate()
abstract Activate : unit -> unit
function Activate()

Note

Richiamare il metodo Activate equivale a un clic dell'utente sull'elemento, ma non viene generato alcun evento Click.

Esempi

Questo esempio consente di impostare un file di testo come finestra attiva che viene utilizzata per scorrere la raccolta delle finestre e visualizzare il nome del progetto che la contiene e l'elemento del progetto per la finestra.

Prima di eseguire questo esempio, aprire un progetto in Visual Studio, aggiungervi un file di testo denominato "TextFile1.txt" e impostarlo come finestra attiva.

Per ulteriori informazioni sulla modalità di esecuzione di questo esempio come componente aggiuntivo, vedere Procedura: compilare ed eseguire gli esempi di codice del modello a oggetti di automazione.

Imports EnvDTE
Imports EnvDTE80
Public Sub OnConnection(ByVal application As Object, _
 ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
 ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
    WinActivateExample(_applicationObject)
End Sub
Sub WinActivateExample(ByVal dte As DTE2)
    Try
        ' Before running, create a text file named
        ' "TextFile1.txt", include it in your solution, 
        ' and make it the active window.
        Dim win As Window2
        Dim doc As Document
        If _applicationObject.Documents.Count > 0 Then
            doc = _applicationObject.Documents.Item("TextFile1.txt")
            win = CType(doc.ActiveWindow, Window2)
            ' Show the name of the Project that contains this
            ' window and document.
            MsgBox("The project that contains this window is named:" _
            & win.Project.Name)
            ' Activate the window.
            win.Activate()
            ' Other available windows.
            Dim w As String = "Other available windows in  _
            the collection:" & vbCr
            For Each wi As Window2 In win.Collection
                w = w & wi.Caption & vbCr
            Next
            MsgBox(w)
            ' Close the window.
            win.Close(vsSaveChanges.vsSaveChangesNo)
        End If
    Catch ex As Exception
        MsgBox(ex.Message)
    End Try
End Sub
using EnvDTE;
using EnvDTE80;
using System.Windows.Forms;
public void OnConnection(object application,
 ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    WinActivateExample(_applicationObject);
}
public void WinActivateExample(DTE2 dte)
{
    try
    {
       // Before running, create a text file named 
        // "TextFile1.txt" and include it in your solution.
        // You do not need to make it the active window.
        Window win;
        Document doc;
        if (dte.Documents.Count > 0)
        {
            doc = dte.Documents.Item("TextFile1.txt");
            win = doc.ActiveWindow;
            // Show the name of the project that contains this 
            // window and document.
            MessageBox.Show(win.Project.Name);
            win.Activate(); // Activate the window
            // Show the name of the current ProjectItem in the window.
            MessageBox.Show(win.ProjectItem.Name);
            // How many other windows are available?
            string w = "Other available windows in the collection:\n";
            foreach (Window wi in win.Collection)
            {
                w = w + wi.Caption + "\n";
            }
            // Close the window.
            win.Close(vsSaveChanges.vsSaveChangesNo);
        }
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

Sicurezza di .NET Framework

Vedere anche

Riferimenti

Window2 Interfaccia

Spazio dei nomi EnvDTE80