try (didn't test, so it may not work):
protected override void Render(HtmlTextWriter output)
{
  output.AddAttribute("style","LEFT:384px;POSITION:absolute;TOP:113px");
  this.ControlStyle.AddAttributesToRender(output);
  output.RenderBeginTag("span");
  output.Write(Text);
  output.RenderEndTag();
}

解决方案 »

  1.   

    output.AddAttribute("style","LEFT:384px;POSITION:absolute;TOP:113px");这个有问题,我并不知道当前的位置是什么,也就是说,在重写Render()事件时,位置信息如384,113这些数字都无法写入固定的,如果自己填个数字进去,当然会输出了,但问题是,不能根据用户在VS设计器中进行拖曳来定位呀?你看看标签控件,将它拖曳到某个位置,则输出时就是某个位置。如果我的控件是从Label继承的话,自己重写Render()事件,则它输出总在左上角了。
      

  2.   

    consider to override RenderContents instead of Render
      

  3.   

    单单重载RenderContents()是可以实现,但有时要输出自己的界面等信息的话,还是需要重载它的样式的,怎样可以得到通过VS定位的信息呢?
      

  4.   

    take at the sample code for this bookhttp://www.microsoft.com/mspress/books/5728.asp
      

  5.   

    该书的编码是免费的http://www.microsoft.com/mspress/books/5728.asp
      

  6.   

    sorry, it is here:http://www.microsoft.com/mspress/books/companion/5728.asp#Companion%20Content