我发现这篇关于在 .ASHX 处理程序中创建 ASP.NET 用户控件实例的文章非常有用,作者是Scott Guthrie。
不幸的是,我现在有一个要求,我需要创建一个依赖于父页面的 UserControl 实例。在这种情况下,我不能使用相同的方法来创建 UserControl。
谁能建议我如何解决这个问题?创建父页面的实例然后获取它包含的 UserControl 的内容涉及什么?
仅供参考和具体说明我正在处理的依赖类型,UserControl 是一个存在于主 Factsheet 页面上的面板。根据用户的配置偏好,在 Factsheet 的基类 FactsheetBuilderPage 中动态生成不同的控件,并包含在页面中。
UserControl 具有属性,例如:
public DateTime EffectiveDate
{
get
{
return ((FactsheetBuilderPage)this.Page).EffectiveDate;
}
}
public Site ConfiguredSite
{
get { return ((FactsheetBuilderPage)this.Page).SiteConfiguration; }
}
public ConfiguredFund Fund
{
get
{
return ((FactsheetBuilderPage)this.Page).Fund;
}
}
它引用了 FactsheetBuilderPage 类,这意味着我需要创建一个 FactsheetBuilderPage 类供它引用。
理想情况下,我无需修改现有代码库就能够解决这个问题,因为重构这将是一个真正的痛苦!
多谢你们
戴夫