ITemplate.InstantiateIn(Control) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
当由类实现时,定义子控件和模板所属的 Control 对象。 然后在内联模板中定义这些子控件。
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)
参数
示例
// 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
' 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
注解
开发模板化服务器控件时,无需实现此方法;.NET Framework为你提供实现。