asp.net panel 动态加载控件

 

ContractedBlock.gif ExpandedBlockStart.gif Code
前台:
<asp:Panel ID = "pnlCondition" runat="server"  Width = "100%">
</asp:Panel>

后台:LiteralControl lc 
= null;
    DropDownList ddl 
= null;
    Label lbl 
= null;
    TextBox txt 
= null;  //定义为全局

//加载

            DataTable dtKeyInfo 
= DB.ExecuteDataSet(dc).Tables[0];  //得到配置表中每个栏位的定义
            lc = new LiteralControl("<table>");
            pnlCondition.Controls.Add(lc);
            
for (int i = 0; i < dtKeyInfo.Rows.Count; i++)
            {
                lc 
= new LiteralControl("<tr>");
                pnlCondition.Controls.Add(lc);
                lc 
= new LiteralControl("<td class='Field_Label'>");
                pnlCondition.Controls.Add(lc);
                lbl 
= new Label();
                lbl.ID 
= i.ToString();
                lbl.Text 
= dtKeyInfo.Rows[i]["fieldname"].ToString();
                pnlCondition.Controls.Add(lbl);
                lc 
= new LiteralControl("</td>");
                pnlCondition.Controls.Add(lc);
                lc 
= new LiteralControl("<td>");
                pnlCondition.Controls.Add(lc);
                
string column = dtKeyInfo.Rows[i]["fieldname"].ToString();
                
if (dtKeyInfo.Rows[i]["uitype"].ToString() == "ddl")
                {
                    
                    ddl 
= new DropDownList();
                    ddl.ID 
= column;
                    
this.BindDDl(ddl,column);
                    pnlCondition.Controls.Add(ddl);
                }
                
if (dtKeyInfo.Rows[i]["uitype"].ToString() == "txt")
                {
                    txt 
= new TextBox();
                    txt.ID 
= column;
                    txt.MaxLength 
= 10;
                    pnlCondition.Controls.Add(txt);
                }
                lc 
= new LiteralControl("</td>");
                pnlCondition.Controls.Add(lc);
                lc 
= new LiteralControl("</tr>");
                pnlCondition.Controls.Add(lc);
            }
            lc 
= new LiteralControl("</table>");
            pnlCondition.Controls.Add(lc);

 

转载于:https://www.cnblogs.com/andycai/archive/2009/10/08/1579012.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值