当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net 动态添加多个用户控件

ASP.NET
ASP.NET FORUMS换肤流程
关于webservice的异步调用简单实例
nhibernate数据加载之Criteria加载
C# 把指定控件显示在最上面
VB面向对象编程的一个简单的演示程序
关于如何利用COM+,来提高ASP执行权限的问题!
ASP.NET跨应用程序进行登录的解决
在快捷方式的右键菜单上添加打开所在目录的菜单项
XML简明教程(一)
使用自定义的数据源进行DataGrid控件的数据绑定
提供两种散列加密算法:MD5、SHA1。大小写敏感
把鼠标放在Form的边缘上不会出现可拉动
The custom tool 'CrystalDecisions.VSDesigner.CodeGen.ReportCodeGenerator' failed
Split的用法
利用XSD生成強類型類文件和描述文件
关于datagrid中的字符串转换
C#中来应用Hook
Get your Crystal report working on your customers server (Cannot find Keycod...
C#中如何插入照片到Excel
.net中Web自定义控件编写注意事项

ASP.NET 中的 asp.net 动态添加多个用户控件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 132 ::
收藏到网摘: n/a

动态添加多个相同用户控件,并使每个用户控件获取不同的内容。 用户控件代码:
代码WebControls
复制代码 代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace xuyuanwang.myControl
{
public partial class Lablexuyuan : System.Web.UI.UserControl
{
string a = "ok";
public string A
{
set
{
a = value;
}
get
{
return a;
}
}
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = A;
}
}
}

aspx页面代码:
代码
复制代码 代码如下:

public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
myControl.Lablexuyuan ctl = (myControl.Lablexuyuan)Page.LoadControl("myControl/Lablexuyuan.ascx");
ctl.A = this.TextBox1.Text;
ArrayList list = addl(ctl);
for (int i = 0; i < list.Count; i++)
{
myControl.Lablexuyuan ctl2 = (myControl.Lablexuyuan)list[i];
this.UpdatePanel1.ContentTemplateContainer.Controls.Add(ctl2);
}
}
private System.Collections.ArrayList addl(myControl.Lablexuyuan l)
{
System.Collections.ArrayList list = null;
if (Session["a"] != null)
{
list = (ArrayList)Session["a"];
}
else
{
list = new ArrayList();
}
list.Add(l);
Session["a"] = list;
return list;
}