Как я могу загрузить управление без Страницы?
public void Something()
{
var ascx = /*LoadControl*/("my.ascx"); // being Page = null
var ctl1 = ascx.Controls[0];
var ctl2 = ascx.Controls[1];
}
my.ascx:
<%@ Control Language="C#" %>
<asp:Literal ID="ctl1" runat="server" />
<asp:Label ID="ctl2" runat="server" />
Вы можете получить свой Page-Object из HttpContext следующим образом:
Page page = HttpContext.Current.Handler as Page;
if (page != null)
{
// Use page instance to load your Usercontrol
}
LoadControl - это не метод страницы, это метод класса Control.
Вы можете просто использовать LoadControl () в своем элементе управления вместо Page.LoadControl ()