StackFrame.Locals Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets a collection of expressions that represent the locals that are currently known by this frame.
public:
property EnvDTE::Expressions ^ Locals { EnvDTE::Expressions ^ get(); };
[System.Runtime.InteropServices.DispId(103)]
public EnvDTE.Expressions Locals { [System.Runtime.InteropServices.DispId(103)] get; }
[<System.Runtime.InteropServices.DispId(103)>]
[<get: System.Runtime.InteropServices.DispId(103)>]
member this.Locals : EnvDTE.Expressions
Public ReadOnly Property Locals As Expressions
Property Value
An Expressions collection.
- Attributes
Examples
The following example demonstrates how to use the P:EnvDTE.StackFrame.Locals property.
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
Remarks
Returns a collection of Expressions that represent the locals that are currently known by this frame.