От: | vmalyshe | ||
Дата: | 22.08.10 09:06 | ||
Оценка: |
Надо поменятьОт: Александр Игрушкин
Дата: 08.04.05 11:10
Оценка: 41 (2)
Пишем так:
control.ascx
<table border=1>
<tr>
<td>this is the left cell</td>
<td><asp:Placeholder runat=server id=contentPlace/></td>
</tr>
</table>
control.ascx.cs
public class DialogPage : System.Web.UI.UserControl
{
public DialogPage()
{
_content = new ControlCollection( this );
}
protected PlaceHolder contentPlace;
protected override void OnLoad( EventArgs e )
{
foreach( Control control in _content )
contentPlace.Controls.Add( control );
base.OnLoad( e );
}
private ControlCollection _content;
public ControlCollection Content
{
get { return _content; }
}
}
и использование:
<a:DialogPage runat=server>
<Content>
<asp:Label ID=test_label Text="7777" Runat=server/>
</Content>
</a:DialogPage>
cs:
public class DialogUsageSample : System.Web.UI.Page
{
protected Label test_label;
private void Page_Load(object sender, System.EventArgs e)
{
test_label.Text = "777777777777777777"; // метка существует!!!!!
}
}
Замечание, пожелания?
protected override void OnLoad( EventArgs e )
protected override void OnInit( EventArgs e )
{
base.onInit(e);