如何将控件添加到从Panel继承的类?

时间:2011-11-18 18:38:19

标签: c# asp.net

我正在创建一个自定义控件,我想从Visual Studio的工具箱中获取它。该课程如下:

[ToolboxData("<{0}:CustomPanel runat=server></{0}:CustomPanel>")]
public class CustomPanel : Panel
{
}  

到目前为止,这么好。控件继承自Panel,一旦添加到工具箱,就可以轻松地在aspx页面上拖放。我现在要做的是为此面板添加新控件,例如标签和一些基本HTML标签。我尝试了以下但没有成功:

  [ToolboxData("<{0}:CustomPanel runat=server></{0}:CustomPanel>")]
  public class CustomPanel : Panel
  {
    protected override void OnInit(EventArgs e)
    {
          Label name = new Label();
          name.Text = "Hello jdecuyer!";
          this.Controls.Add(name);
          base.OnInit(e);
     }
  } 

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

使这更容易。我会建议: 1.)然后从设计器创建UserControl 2.)将自定义面板类添加到该用户控件 3.)添加您认为合适的标签/链接。 4.)将UserControl添加到您的页面

Ramhound是正确的,但似乎你没有给标签一个位置,虽然它应该自动定位到左上角。而且你将它添加到这个而不是你的面板。

抱歉,asp没有太多的exp。希望这有点帮助。