Dynamically create web controls from a string value

B

basicframe

Anyone know how to create a asp.net WebControl from a string value?
I'm pulling string values (eg. System.Web.UI.WebControls.TextBox) from
an XML file and would like to dynamically create a TextBox, then add
to Page.

I've tried creating with Activator.CreateInstance, but always returns
an "Specified cast is not valid" exception.

I've tried several variations of the following:
Sample #1-----------------

private void Page_Load(object sender, System.EventArgs e)
{
string controlName = "System.Web.UI.WebControls.TextBox";
Object o = Activator.CreateInstanceFrom(@"c:\windows\assembly\gac\system.web\1.0.3300.0__b03f5f7f11d50a3a\system.web.dll",controlName);
Control c = (Control)o;
Page.Controls.Add(c);
}

returns Exception = "Specified cast is not valid"


Sample #2-----------------

private void Page_Load(object sender, System.EventArgs e)
{
string controlName = "System.Web.UI.WebControls.TextBox";
Type t = Type.GetType(controlName);
Object o = Activator.CreateInstance(t);
Control c = (Control)o;
Page.Controls.Add(c);
}

returns Exception = "Value cannot be null. Parameter name: type"


I'm stabbing in the dark here, so any help is very much appreciated.

..geoff
 
B

basicframe

Never mind. I figured it out.

private void Page_Load(object sender, System.EventArgs e)
{
string controlType = "System.Web.UI.WebControls.TextBox, System.Web,
Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a";
Type t = Type.GetType(controlType);

Control h = (Control)Activator.CreateInstance(t);
PlaceHolder1.Controls.Add(h);
}

--geoff
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,582
Members
45,057
Latest member
KetoBeezACVGummies

Latest Threads

Top