从回发获取在自定义控件中创建的textBox值 [英] Get textBox Value Created Into Custom Control from Post Back
问题描述
从回发获取在自定义控件中创建的textBox值(我需要获取此文本框的值)
在aspx.cs
受保护的重写void OnLoad(EventArgs e)
{
如果(!IsPostBack)
{
CreateTextBoxControls();
}
DisplayResult();
}
私有AspControlFinal.Controls.TextBoxControl CreateTextBoxControl(int id)
{
结果=(AspControlFinal.Controls.TextBoxControl)LoadControl(〜/Controls/TextBoxControl.ascx");
result.ID ="TB_" + id;
result.InsertBellow + = InsertRowBellow;
result.Remove + = RemoveRow;
result.CreateTextBox(你叫什么名字?");
m_controls [id] =结果;
返回结果;
}
私有void CreateTextBoxControls()
{
ArrayList ids = ControlIdList;
if(ids!= null)
{
foreach(ID中的int ID)
{
AspControlFinal.Controls.TextBoxControl控件= CreateTextBoxControl(id);
c_placeHolder.Controls.Add(control);
}
}
}
在acsx.cs中:
TextBox TextBox1 =新的TextBox();
标签Label1 =新Label1();
公共字符串TextBoxValue
{
获取
{
返回TextBox1.Text;
}
设置
{
TextBox1.Text =值;
}
}
公共无效CreateTextBox(字符串问题)
{
LabelValue =问题;
TextBox1.ID ="TextBox1";
Page.Form.Controls.Add(Label1);
Page.Form.Controls.Add(new LiteralControl("<br>")));
Page.Form.Controls.Add(TextBox1);
Page.Form.Controls.Add(new LiteralControl("<br>")));
}
Get textBox Value Created Into Custom Control from Post Back(I need To Get value of This Text Box)
in aspx.cs
protected override void OnLoad(EventArgs e)
{
if (!IsPostBack)
{
CreateTextBoxControls();
}
DisplayResult();
}
private AspControlFinal.Controls.TextBoxControl CreateTextBoxControl(int id)
{
result = (AspControlFinal.Controls.TextBoxControl)LoadControl("~/Controls/TextBoxControl.ascx");
result.ID = "TB_" + id;
result.InsertBellow += InsertRowBellow;
result.Remove += RemoveRow;
result.CreateTextBox("What''s your name?");
m_controls[id] = result;
return result;
}
private void CreateTextBoxControls()
{
ArrayList ids = ControlIdList;
if (ids != null)
{
foreach (int id in ids)
{
AspControlFinal.Controls.TextBoxControl control = CreateTextBoxControl(id);
c_placeHolder.Controls.Add(control);
}
}
}
in acsx.cs :
TextBox TextBox1=new TextBox();
Label Label1=new Label1();
public String TextBoxValue
{
get
{
return TextBox1.Text;
}
set
{
TextBox1.Text = value;
}
}
public void CreateTextBox(string Question)
{
LabelValue = Question;
TextBox1.ID = "TextBox1";
Page.Form.Controls.Add(Label1);
Page.Form.Controls.Add(new LiteralControl("
"));
Page.Form.Controls.Add(TextBox1);
Page.Form.Controls.Add(new LiteralControl("
"));
}
推荐答案
使用自定义控件对象的FindControl方法.
FindControl接受参数,即子控件名称(文本框).
希望对您有帮助.
Use FindControl method of Custom Control object.
FindControl accepts a parameter i.e. Child Control Name(Textbox).
I hope it helps you.
这篇关于从回发获取在自定义控件中创建的textBox值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!