在自定义控件中引用用户控件,然后我想取得其中一个web控件的UniqueID,但取不到,该怎么做?

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 srz007 的 blog

我的程序的结构类似于微软出的那套论坛,先创建一个基类,继承自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);
}

本文关键:在自定义控件中引用用户控件,然后我想取得其中一个web控件的UniqueID,但取不到,该怎么做?
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top