ArrayList url = new ArrayList(); // 模块路径
ArrayList md=new ArrayList(); //模块id
url = jyoauser.return_rolemodel(role_id, system_id);//返回角色对应模块url
md = jyoauser.return_rolemodel2(role_id,system_id);//返回角色对应模块id
for (int u = 0; u < url.Count; u++)
{
Control uc = new Control();
uc = Page.LoadControl(url[u].ToString());
Type pType = uc.GetType();//自动获得加载控件的类型
PropertyInfo pi=pType.GetProperty("modelid"); //自动获得加载控件的属性 当然这里如果是方法用pType.GetMethod
pi.SetValue(uc, md[u].ToString(), null); //把控件的模块id值传给控件的modelid属性
test.Controls.Add(uc);
}
一个控件部分代码:
private int _modelid;控件的模块id
public int modelid
{
get { return this._modelid; }
set { this._modelid = value; }
}