Jump to content
  • Advertisement


This topic is now archived and is closed to further replies.


Understanding .NET custom web controls

This topic is 5369 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

heya, i've posted this question on other sites but since the useful advice i've ever recieved has been here, i figured i'd give it a shot. i'm taking my first stab at implementing custom controls in a ASP.NET app and i keep getting errors (surprise surprise) while trying to build instances of custom controls. first off, these are not User Controls, rather, i'm creating a class heirarchy starting with an abstract prototype and instantiating derived child instances. for example, here's a sample implementation...
           |                            |
 {transmittalTypeublic}   {meetingLogTypeublic}
and the documentType inherits for System.Web.UI.WebControls.WebControl. as far as i know, all i need to do is add a directive to the top of the aspx doc and an accompanying tag to the doc as well. like
<@ TagPrefix="dt" Namespace="AppFoo.codeBin" Assembly="AppFoo">
<:someInstance id="bar" runat="server" />   
in my class code (which inherits from System.Web.UI.WebControls.WebControl), i'm defining a few protected fields for various UI widgets (labels, textbxs, etc). instances of these members are created within a custom InitializeComponent call via the constructor and then added to a local arrayList. lastly..., the CreateChildControls method (which i believe is called during the actual building) adds the elements of the arrayList to the objects Controls collection, e.g...
foreach(WebControl wc in arlLocalCtls)
unfortunately, i can't seem to get a single instance of any custom control to be built. design-time shows an immediate error ("Error Building Control: instanceName") in HTML view, and errors are simply returned in the browser on execute. am i missing a key step here or the concept as a whole or...? any help/advice is greatly appreciated. thanks! ..:: mirirom ::.. [edited by - mirirom on October 6, 2003 5:16:18 PM] [edited by - mirirom on October 6, 2003 5:17:44 PM]

Share this post

Link to post
Share on other sites
for those that are interested, i found the fix. my problem was syntactical (and my post above is also missing the custom tagPrefix as well).

the compiled class name MUST be used after the custom tag. so, for example...

<dt:someInstance id="foo" runat="server" />

should read as

<dt:nameOfClass id="foo" runat="server" />

and there you have it....

Share this post

Link to post
Share on other sites
Edit: beat me to it.

You need to add an entry to the AssemblyInfo file in the custom control project that looks like...

<Assembly: TagPrefix("AppFoo.codeBin", "dt")>

and then declare the instance in the page like...

<dt:transmittalType id="bar" runat="server" />

Paul Cunningham

Edit: added code tags
Edit: added source tags

[edited by - PaulCunningham on October 7, 2003 12:41:30 PM]

Share this post

Link to post
Share on other sites
ah cool, didn''t realize you could declare the tag prefix in AssemblyInfo. much much better than page by page definitions.


..:: mirirom ::..

Share this post

Link to post
Share on other sites

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!