Share via

Create Custom Views of Managed Objects


This article applies to Visual Studio 2015. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here

You can customize the way Visual Studio displays data types in debugger variable windows.


In C# and Visual Basic, you can add expansions for custom data using DebuggerTypeProxyAttribute, DebuggerDisplayAttribute, and DebuggerBrowsableAttribute.

In .NET Framework 2.0 code, Visual Basic does not support the DebuggerBrowsable attribute. This limitation is removed in more recent versions of the .NET Framework.


You can write a visualizer to display any managed data type. For more information, see How to: Write a Visualizer.

Native Code

For native code, you can add custom data type expansions to the file autoexp.dat, which is located in the Program Files\Microsoft Visual Studio 11.0\Common7\Packages\Debugger directory. Instructions on how to write autoexp rules are located in the file itself.


The structure of this file and the syntax of autoexp rules might change from one release of Visual Studio to the next.

Native type views can also be customized by writing an expression evaluator add-in. For more information, see EEAddIn Sample: Debugging Expression Evaluator Add-In.

See Also

Using DebuggerTypeProxy Attribute
Using the DebuggerDisplay Attribute
Watch and QuickWatch Windows
Enhancing Debugging with the Debugger Display Attributes