悬赏分:100 浏览:249 次
页面开发中用到了自定义页面 :
<asp:CatalogZone ID="CatalogZone1" runat="server">
<ZoneTemplate>
<asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1" runat="server" OnLoad="DeclarativeCatalogPart1_Load">
<WebPartsTemplate>
</WebPartsTemplate>
</asp:DeclarativeCatalogPart> </ZoneTemplate>
</asp:CatalogZone>
其中WebPartsTemplate标记中是要添加自定义控件的地方,如果我添加以下代码
<uc1:ReportNamelist ID="ReportNamelist1" runat="server" Title = "dadfada"/>
则可以通过 但是如果我在后台添加时候则不能显示,却是为何?
public class CustomWebPartTemplate : ITemplate
{
private WebPartManager manger = new WebPartManager();
private Page p = new Page();
public void InstantiateIn(Control container)
{
DataTable dt = BLL.CommonClass.ExcelOperate.GetAllExcelFile(userid).Tables[0];
//DataTable dt = ExcelOperate.GetAlltablename().Tables[0];
if (dt.Rows.Count > 0)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
int id = Convert.ToInt32(dt.Rows[i][0].ToString());
if (id > 0)
{
ReportNamelist re = (ReportNamelist)p.LoadControl("/PageLayout/ReportNamelist.ascx");
&n
|
代码没帖全吧~~? 根据我的印象,WebPart好像有个局限就是只能从aspx(markup)里添加,不能从.cs(code)里添加. webpart不是很方便 自已要下定义的东西太少了 楼主可以看一下:http://www.cnblogs.com/zhangronghua/archive/2007/12/20/1006728.html 上面有webpart的一些资料 另如果你是想用webpart实现igoogle效果的话,我倒是有一个示例,不过是用数据库+js+ajax做的,不是用的webpart,可以给你参考一下。 |