转 DevExpress-ASPxPageControl 动态添加 TabPage 内容

本文介绍在ASP.NET中使用DevExpress控件ASPxPageControl动态添加TabPage的方法,通过获取用户信息填充TabPage,并在每个TabPage中嵌入iframe加载不同URL内容。注意,为了正确显示iframe,需先添加TabPage再填充内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

话不多说想看代码,在细说。

前台,很简单。主要看后台

<dx:ASPxPageControl runat="server" ID="<span style="font-family: Arial, Helvetica, sans-serif;">pageControl</span><span style="font-family: Arial, Helvetica, sans-serif;">"></span>
        <TabPages>
        </TabPages>

  

 

</dx:ASPxPageControl>

  

后台,注意注释说明。

 

private void GetUserAttendCellsNew(string strUserCode)
        {
            DataSet userAttendCells = new FlatWorksZone().GetUserAttendCells(strUserCode, strSubUserCode);

                DataTable table2 = userAttendCells.Tables[1];

                foreach (DataRow row in table2.Rows)
                {
                    
                    var tp = new TabPage(row["CellName"].ToString(), row["CellID"].ToString());
                    //****************************************************************************
                    //注意这段注释,不知道为什么这添加TabPage内容是只有第一个Tab中有iframe,知道的给我留言
                    //因此必须先把TabPage添加到前端然后再遍历所有TabPage添加相关内容
                    //因此下面多了一个foreach
                    //var ifra = new HtmlGenericControl("iframe") { ID = row["CellID"].ToString() };
                    //ifra.Attributes["src"] = row["CellURL"] + "?UserID=" + strUserCode;
                    //ifra.Style.Add("width", "100%");
                    //ifra.Style.Add("height", "500px");
                    //var cc = new ContentControl { ID = Guid.NewGuid().ToString().Replace("-", "") };
                    //cc.Controls.Add(ifra);
                    //tp.Controls.Add(cc);
                    //*****************************************************************************
                    pageControl.TabPages.Add(tp);
                }
                foreach (DataRow row in table2.Rows)
                {

                    var ifra = new HtmlGenericControl("iframe") { ID = row["CellID"].ToString() };
                    ifra.Attributes["src"] = row["CellURL"] + "?UserID=" + strUserCode;
                    ifra.Style.Add("width", "100%");
                    ifra.Style.Add("height", "500px");

                    var cc = new ContentControl { ID = Guid.NewGuid().ToString().Replace("-", "") };
                    cc.Controls.Add(ifra);

                    pageControl.TabPages.FindByName(row["CellID"].ToString()).Controls.Add(cc);

                }
            
        }

  淘淘实惠多九块九包邮网(http://www.taohuiduo.com)

转载于:https://www.cnblogs.com/hesijian/p/5306785.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值