Aracılığıyla paylaş


StackFrame.Parent Özellik

Hemen üst nesnesi alır bir StackFrame nesne.

Ad alanı:  EnvDTE
Derleme:  EnvDTE (EnvDTE.dll içinde)

Sözdizimi

'Bildirim
ReadOnly Property Parent As Thread
    Get
Thread Parent { get; }
property Thread^ Parent {
    Thread^ get ();
}
abstract Parent : Thread
function get Parent () : Thread

Özellik Değeri

Tür: EnvDTE.Thread
Thread nesnesi

Açıklamalar

Parent Özelliği döndürür hemen üst StackFrame nesne. İçeren koleksiyonu almak için Collection özelliği.

Örnekler

Aşağıdaki örnek, nasıl kullanılacağını gösterir Parent özelliği.

Bu özellik sınamak için

  1. Hedef uygulamanız farklı Main() yöntemini yönteminin içine bir kesme noktası ayarlayın.

  2. Hedef uygulama hata ayıklama modunda çalıştırın.

  3. Uygulama kesme noktasına durduğunda, eklentiyi çalıştırın.

public static void TestStackFrames(DTE dte)
{
    // Setup debug Output window.
    Window w = (Window)dte.Windows.Item(EnvDTE.Constants.vsWindowKindOutput);
    w.Visible = true;
    OutputWindow ow = (OutputWindow)w.Object;
    OutputWindowPane owp = ow.OutputWindowPanes.Add("Stack Frames Test");
    owp.Activate();

    EnvDTE.StackFrames stackFrames = dte.Debugger.CurrentThread.StackFrames;
    owp.OutputString("\nNumber of items in the Current Stack collection: " + 
                     stackFrames.Item(1).Collection.Count + "\n");

    foreach(EnvDTE.StackFrame sf in stackFrames)
    {
        owp.OutputString("\nStack Frame: " + sf.FunctionName);
        owp.OutputString("\n  Edition of the environment : " + sf.DTE.Edition);
        owp.OutputString("\n  Language                   : " + sf.Language);
        owp.OutputString("\n  Locals");
        EnvDTE.Expressions expressions = sf.Locals;
        foreach(EnvDTE.Expression exp in expressions)
            owp.OutputString("\n    " + exp.Name + " = " + exp.Value);
        owp.OutputString("\n  Module                     : " + sf.Module);
        owp.OutputString("\n  Current Thread ID          : " + sf.Parent.ID);
        owp.OutputString("\n  Return Type                : " + sf.ReturnType);
    }
}
Shared Sub TestStackFrames(ByRef dte As EnvDTE.DTE)
    Dim str As String
    Dim stackFrames As EnvDTE.StackFrames = dte.Debugger.CurrentThread.StackFrames
    str = "Number of items in the Current Stack collection: " + _
          stackFrames.Item(1).Collection.Count.ToString()
    For Each sf As EnvDTE.StackFrame In stackFrames
        str += vbCrLf + vbCrLf + "  Stack Frame: " + sf.FunctionName
        str += vbCrLf + "  Edition of the environment: " + sf.DTE.Edition
        str += vbCrLf + "  Language: " + sf.Language
        str += vbCrLf + "  Locals"
        Dim expressions As EnvDTE.Expressions = sf.Locals
        For Each exp As EnvDTE.Expression In expressions
            str += vbCrLf + "    " + exp.Name + " = " + exp.Value.ToString()
        Next
        str += vbCrLf + "  Module: " + sf.Module
        str += vbCrLf + "  Current Thread ID: " + sf.Parent.ID.ToString()
        str += vbCrLf + "  Return Type: " + sf.ReturnType
    Next
    MessageBox.Show(str, "Stack Frame Test - Properties")
End Sub

.NET Framework Güvenliği

Ayrıca bkz.

Başvuru

StackFrame Arabirim

EnvDTE Ad Alanı

Diğer Kaynaklar

Nasıl Yapılır: derlemek ve otomasyon nesne modeli kod örnekleri çalıştırma