我的程序的结构类似于微软出的那套论坛,先创建一个基类,继承自webcontrol, inamingcontainer
然后在类里面加入
protected override void createchildcontrols()
{
//初始化所有继承自这个类的每个自定义控件中load进来的用户控件
initializeskin(skin);
}
protected abstract void initializeskin(control skin);
在继承自上面这个类的子类中
protected override void initializeskin(control skin)
{
//这个里面我加入控件,并想取得该控件生成到最终页上的id,应该是uniqueid这个属性,但在这里却取不到,取到的结果是它的id,我该怎么做能取到它的uniqueid呢?
radiobuttonlist rblicon;
rblicon = (radiobuttonlist)skin.findcontrol("rblicon");
page.response.write(rblicon.uniqueid);
}
解决办法:很简单,但一直没想到
在继承自上面这个类的子类中
protected override void initializeskin(control skin)
{
radiobuttonlist rblicon;
rblicon = (radiobuttonlist)skin.findcontrol("rblicon");
rblicon.load += new eventhandler(rblicon_load);
}
private void rblicon_load(object sender, eventargs e)
{
//在这里就可以得到了,呵呵
page.response.write(rblicon.uniqueid);
}