Thursday, July 8, 2010

Create Dynamic Controls

//pnlTransferRequestOutside is only control needed on aspx page
protected void Page_Load(object sender, EventArgs e)
{
//recreate Textboxes
int count = Convert.ToInt32(ViewState["Count"]) + 1;
for (int i = 1; i < count; i++) {
CreateTextBox(i.ToString());
}
}

protected void btnAddTransfer_Click(object sender, EventArgs e)
{
if (ViewState["Count"] != null)
ViewState["Count"] = Convert.ToInt32(ViewState["Count"].ToString()) + 1;
else
ViewState["Count"] = 1;

CreateTextBox(ViewState["Count"].ToString());
}

protected void CreateTextBox(string id)
{
//create new textbox
Label lbl = new Label();
lbl.Text = "ID:";
pnlTransferRequestOutside.Controls.Add(lbl);
TextBox tb = new TextBox();
tb.ID = "tb" + id;
pnlTransferRequestOutside.Controls.Add(tb);
tb.Text = Request.Form[tb.ClientID];
RangeValidator rv = new RangeValidator();
rv.ControlToValidate = tb.ID;
rv.ErrorMessage = "Numbers Only";
rv.Type = ValidationDataType.Integer;
rv.MaximumValue = "999999999";
rv.MinimumValue = "0";
rv.SetFocusOnError = true;
pnlTransferRequestOutside.Controls.Add(rv);
}

No comments:

Post a Comment