Create custom views of .NET objects (C#, Visual Basic, F#, C++/CLI)

Applies to: yesVisual Studio noVisual Studio for Mac noVisual Studio Code

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


In C#, Visual Basic, F#, and C++ (C++/CLI code only), you can add expansions for custom data using DebuggerDisplayAttribute, DebuggerTypeProxyAttribute, 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 .NET.


You can write a visualizer to display any .NET data type. For more information, see Custom visualizers.


To create a visualizer for C/C++ objects, see UIVisualizer element within the Natvis documentation. Also, see the C/C++ custom visualizer sample or the SQLite native Debugger Visualizer sample.

See also