Geeks With Blogs
Dennis Ecclestone's BLOG

 When you create a custom control by deriving from an existing control, Intellisense is automatically supported in the code behind.  However, the HTML editor does not automatically support intellisense.  In order to provide Intellisense in the HTML editor, you need to do a fair bit of work.  The following MSDN article outlines the process.

 Adding Design Time Support to ASP.NET Controls

However, there’s a much simpler way to do this.  Use ASP.NET Intellisense Generator from Blue Vision Software

http://www.bluevisionsoftware.com/WebSite/ProductsAndServicesInfo.aspx?ID=9

This tool will automatically generate the required XSD for the Intellisense.

The procedure to generate the XSD for intellisense is as follows; 

  • Launch the ASP.NET Intellisense Generatator from Visual Studio .NET using the menu option Tools -> ASP.NET Intellisense Generator -> Run ASP.NET Intellisense Generator.
  • Define the information for the schema
    • Friendly Name (e.g. Orenda WebControls)
    • Target Namespace (e.g. urn:http://schemas.orenda.com/WebControls)
    • Short Description (e.g. Orenda’s custom web controls)
  • Select the assembly to generate the XML schema for.
  • Specify the schema path.  You can put this in the project folder for the assembly which you are generating the XML schema for.
  • Click on Generate Intellisense.
  • Add the XML schema for the Intellisense to the project.
  • Build the project.
  • Place a copy of the schema file in the directory C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Packages\schemas\xml.  This is where Visual Studio .NET keeps the schemas for the built-in controls.

To enable intellisense in the HTML editor, you still need to do a couple of things;

  • Register your assembly with the custom control.

<%@ Register TagPrefix="oac" Namespace="Orenda.WebControls" Assembly="Orenda.WebControls" %>

  •  Add an attribute to the <BODY> tag of the ASPX page which identifies the URL for your schema with the Intellisense. 

<body ms_positioning="FlowLayout" xmlns:oac ="urn:http://schemas.orenda.com/WebControls">

 Now your custom controls will show up in Intellisense in the HTML editor and you will be able to see the control properties. 

Posted on Thursday, January 5, 2006 8:01 AM | Back to top


Comments on this post: Intellisense in the HTML Editor for Custom Controls - The Easy Way

No comments posted yet.
Your comment:
 (will show your gravatar)


Copyright © Dennis Ecclestone | Powered by: GeeksWithBlogs.net