using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
TextBox food =new TextBox();
food.ID="food";/////////////////////////为什么在load里的Text就是空的。
Panel1.Controls.Add(food);
Response.Write(food.Text);
}
protected void AddTextBox()
{
TextBox food;
food=Panel1.FindControl("food")as TextBox;
string[] foodText;
CheckBox foodCheckbox;
if(TextBox1.Text!="")
{
food.Text += TextBox1.Text + ",";
foodText = food.Text.Split(',');
/*foreach (string cbtext in foodText)
{
foodCheckbox = new CheckBox();
foodCheckbox.Text = cbtext;
Panel1.Controls.Add(foodCheckbox);
Response.Write(cbtext);
}*/
for (int i = 0; i < foodText.Length - 1; i++)
{
foodCheckbox = new CheckBox();
foodCheckbox.Text = foodText[i];
Panel1.Controls.Add(foodCheckbox);
}
}
TextBox1.Text = "";
// Response.Write(food.Text);
}
protected void Button1_Click(object sender, EventArgs e)
{
AddTextBox();
}
}
在这个程序里为什么在lound函数里的food.Text就没有值呢,而在AddTextBox里的food.Text就有值,他们俩是一个控件啊。
打错了,是在load函数里的food.Text没有内容,而在AddCheckBox函数里的food.Text有内容。
TextBox food =new TextBox(); food.ID="food";/////////////////////////为什么在load里的Text就是空的。 Panel1.Controls.Add(food);
没看到你给food的Text赋值,你是给ID赋值。
food.Text += TextBox1.Text + ","; foodText = food.Text.Split(',');
这里不是给food.Text赋值了吗,有值很正常啊。