ITemplate.InstantiateIn(Control) ITemplate.InstantiateIn(Control) ITemplate.InstantiateIn(Control) ITemplate.InstantiateIn(Control) Method

Definition

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.

public:
 void InstantiateIn(System::Web::UI::Control ^ container);
public void InstantiateIn (System.Web.UI.Control container);
abstract member InstantiateIn : System.Web.UI.Control -> unit
Public Sub InstantiateIn (container As Control)

Parameters

container
Control Control Control Control

The Control object to contain the instances of controls from the inline template.

Examples

// 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);
    container.Controls.Add(l);
}
// 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();

}
' 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 Sub InstantiateIn(container As Control) Implements ITemplate.InstantiateIn
   Dim l As New Literal()
   AddHandler l.DataBinding, AddressOf Me.BindData
   container.Controls.Add(l)
End Sub 'InstantiateIn

' Create a public method that will handle the
' DataBinding event called in the InstantiateIn method.
Public Sub BindData(sender As Object, e As EventArgs)
   Dim l As Literal = CType(sender, Literal)
   Dim container As DataGridItem = CType(l.NamingContainer, DataGridItem)
   l.Text = CType(container.DataItem, DataRowView)(column).ToString()
End Sub 'BindData 

Remarks

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

Applies to

See also