This documentation is archived and is not being maintained.

ITemplate.InstantiateIn Method

When implemented by a class, defines the Control object that child controls and templates belong to. These child controls are in turn defined within an inline template.

Namespace:  System.Web.UI
Assembly:  System.Web (in System.Web.dll)

void InstantiateIn(
	Control container


Type: System.Web.UI.Control
The Control object to contain the instances of controls from the inline template.

When developing templated server controls, you do not need to implement this method; the .NET Framework provides the implementation for you.

// Override the ITemplate.InstantiateIn method to ensure 
// that the templates are created in a Literal control and
// that the Literal object's DataBinding event is associated
// with the BindData method.
public void InstantiateIn(Control container)
    Literal l = new Literal();
    l.DataBinding += new EventHandler(this.BindData);
// Create a public method that will handle the
// DataBinding event called in the InstantiateIn method.
public void BindData(object sender, EventArgs e)
    Literal l = (Literal) sender;
    DataGridItem container = (DataGridItem) l.NamingContainer;
    l.Text = ((DataRowView) container.DataItem)[column].ToString();


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.