我以编程方式加载了我的用户控件(.ascx),如:LoadControl("~/Controls/mycontrol.ascx")
。直到今天,当我向我的控制中添加了两个成员时,一切都还可以。
public StuffType stuffType { get; set; }
protected void Page_Load(object sender, EventArgs e)
{
switch (stuffType)
{
case CardType.A:
FillGvStuff();
break;
case CardType.B:
FillGvExStuff();
break;
default:
break;
}
}
我如何访问StuffType?
我发现了一种solution。
答案 0 :(得分:5)
我认为你会做这样的事情:
MyControl ctrl = (MyControl)LoadControl("~/Controls.mycontrol.ascx");
ctrl.stuffType = ...;
// put control somehwere
基本上,当你加载它时,将它分配给一个变量并将其转换为它的类型,然后你应该可以访问它的方法和属性
您可能还想将page_load事件移动到page_prerender中,以便在控件中发生page_load事件之前明确设置属性