向页面添加控件
本文关键字:控件 添加 | 更新日期: 2023-09-27 17:55:58
protected void Page_Load(object sender, EventArgs e)
{
Button quote = new Button();
Button reply = new Button();
Button edit = new Button();
Label UsersMessage = new Label();
UsersMessage.Text = "Users Message: question was submitted";
Table tabl = new Table();
TableRow tablRow=new TableRow();
TableCell tablCell=new TableCell();
tablCell.Controls.Add(quote);
tablCell.Controls.Add(reply);
tablCell.Controls.Add(edit);
tablCell.Controls.Add(UsersMessage);
tablRow.Cells.Add(tablCell);
tabl.Rows.Add(tablRow);
}
我正在尝试添加一个带有行的表格、带有按钮的单元格和标签。为什么当我启动页面时没有添加任何内容?(当我查看它时,源代码中没有任何添加内容)
还必须将Table
控件本身添加到页面的窗体中:
Page.Form.Controls.Add(tabl);
您
不会将控件添加到页面本身;)
controlContainer.Controls.Add(tabl);
会做这个伎俩
其中controlContainer
是在 ASPX 上创建的控件,如asp:placeholder
或asp:panel
。通过这种方式,您可以定义控件必须以特定方式显示的位置。
重要提示:但是,当您以这种方式添加控件时,您将进入一个令人担忧的区域。如果您打算使用按钮进行postback
则此方法将无法如上所示。请注意/谷歌/必应术语为 asp.net page-lifecycle
,viewstate
,eventwire
control-id's
等...一个很好的教程在这里
您没有将表添加到页面控件集合。
this.Controls.Add(tabl);
或者,如果您有要将表添加到的特定控件,请使用该控件。