我试图在 c# 中加载用户控件。
可以使用以下代码将 .ascx 添加到我的 .aspx 页面:
Control MyUserControl;
MyUserControl = LoadControl("~/controls/Editor.ascx");
PlaceHolder1.Controls.Add(MyUserControl);
但是,我想将ID传递给 Editor.ascx,Editor.ascx 顶部包含以下代码:
private int m_id = 0;
public int ID
{
get { return m_id; }
set { m_id = value; }
}
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack && !Page.IsCallback)
{
using (DataClassesDataContext db = new DataClassesDataContext())
{
TB_Editor.Text = db.DT_Control_Editors.Single(x => x.PageControlID == ID).Text.Trim();
}
}
}
我尝试将控制权转换为用户控制权,这样我就可以访问 ID,见下文
UserControl Edit = (UserControl)MyUserControl;
但我得到一个演员错误。
有任何想法吗?