XamlServices.Load Method (Stream)

.NET Framework (current version)

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Loads a Stream source for a XAML reader and writes its output as an object graph.

Namespace:   System.Xaml
Assembly:  System.Xaml (in System.Xaml.dll)

public static object Load(
	Stream stream


Type: System.IO.Stream

The stream to load as input.

Return Value

Type: System.Object

The object graph that is written as output.

Exception Condition

stream is null.

Different signatures for the Load(Stream) method specify different types of input for the source XAML. The Load(Stream) internal implementation first creates an XmlReader by calling Create(Stream) and then creates a new instance of a specialized XamlReader that processes the input.

In order for the Load(Stream) call to successfully create an object graph, the following must be true:

  • The source is well-formed and valid XML.

  • The source is valid XAML at the language level.

  • The XAML types that are specified in the source XAML must resolve to backing types in the relevant XAML namespaces. For example, XAML types for WPF namespaces can resolve to a WPF XAML namespace as specified in the XAML; the assemblies for WPF must be included in the project or available in the run time; and so on.


XamlServices is not the recommended XAML reading or XAML writing API set if you are processing Windows Presentation Foundation (WPF) types, or types based on WPF. For WPF usage, use System.Windows.Markup.XamlReader for reading or loading XAML; and System.Windows.Markup.XamlWriter for writing back XAML. These classes use System.Xaml APIs internally in their implementation; however, they also provide support for WPF-specific concepts that influence the nature of XAML reading and writing, such as optimizations for dependency properties.

.NET Framework
Available since 4.0
Return to top