Application.LoadComponent Method

May 11, 2014

Loads a XAML file that is located at the specified Uniform Resource Identifier (URI) and converts it to an instance of the object that is specified by the root element of the XAML file.

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

public static void LoadComponent(
	Object component,
	Uri resourceLocator
)

Parameters

component
Type: System.Object
An object of the same type as the root element of the XAML file to be loaded.
resourceLocator
Type: System.Uri
A relative URI that identifies the XAML file to be loaded.

ExceptionCondition
ArgumentException

resourceLocator is an absolute URI.

ArgumentNullException

component is null.

-or-

resourceLocator is null.

XamlParseException

An error occurred while parsing the XAML file.

The XAML file that is loaded can be either an application definition file (App.xaml, for example) or a page file (MainPage.xaml, for example). The XAML file can be in one of the following locations:

  • Included in the application package.

  • Embedded in the application assembly.

  • Embedded within a library assembly at the site of origin.

The following code example demonstrates how to use this method to merge the XAML and code-behind portions of a Page class. This code is similar to the InitializeComponent method that Visual Studio generates for the same purpose.

Visual Studio generates the InitializeComponent method when a XAML file has a build action of Page. To load a XAML file using the following example code, set its build action to Resource.


private System.Windows.Controls.Grid LayoutRoot;

public Page()
{
    System.Windows.Application.LoadComponent(this, new System.Uri(
        "/WindowsPhoneApp1;component/Page.xaml", 
        System.UriKind.Relative));
    this.LayoutRoot = ((System.Windows.Controls.Grid)
        (this.FindName("LayoutRoot")));
}


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Show:
© 2014 Microsoft