日期:2014-05-19  浏览次数:20432 次

关于控件的访问限制
……     ……     ……
private   void   SetTextBox()
{
        Table   ttable   =   new   Table();

        TableRow   tRow   =   new   TableRow();
        Table1.Rows.Add(tRow);

        TableCell   tCell   =   new   TableCell();
        tRow.Cells.Add(tCell);

        TextBox   textbox   =   new   TextBox();//获取该控件的值
        ttable.Controls.Add(textbox);
}

private   void   GetTextBox()
{
        假设SetTextBox()方法在页面载入时已经调用,通过事件调用GetTextBox(),如何在这里获取上面方法所建立的textbox控件的值呢?
}
……     ……     ……


小弟分数实在不多,还请笑纳,谢谢。

------解决方案--------------------
测试通过,代码如下

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
this.SetTextBox();
}

private void SetTextBox()
{
Table ttable = new Table();
ttable.Visible = true;
ttable.Width = 300;
ttable.Height = 400;
ttable.BackColor = Color.Red;


TableRow tRow = new TableRow();
TableCell tCell = new TableCell();
tCell.Text = "aaa ";
tRow.Cells.Add(tCell);

ttable.Rows.Add(tRow);

TextBox textbox = new TextBox();//获取该控件的值
textbox.ID = "textbox1 ";
textbox.Text = "johnny ";
ttable.Rows[0].Cells[0].Controls.Add(textbox);

this.Panel1.Controls.Add(ttable);
Response.Write(ttable);
}

protected void Button1_Click(object sender, EventArgs e)
{
TextBox aTextBox = (TextBox)this.Panel1.FindControl( "textbox1 ");
Response.Write(aTextBox.Text);
}
}