HtmlDocument library for DotNet

I always disliked the messy ASP.Net code and html output so I developed this library for generating Html pages from C# code. You can reference this library in your ASP.Net project and generate the html output directly from your code-behind. It supports all commonly used html tags and you can also create any other tag with the CustomNode classes. Except for hyperlinks correct node nesting is enforced so it's not as flexible as the html definition usually allows. The classes and methods are provided with comments but if you have any problems implementing let me know. Target DotNet framework version is 4.
Download VS2010 Sourcecode version 1.3.2
Please let me know the good and bad things you found about it so I can improve it.
info@fkootstra.nl
Download dll version 1.3.2
Terms & Conditions
You can use this library in any way you like but providing a link to this website is appreciated.

On all our offers and activities the terms and conditions of ICT-Office apply. Filed with the Chamber of Commerce for the Central Netherlands under number 30174840.

Change log
12/12/2010 Added HtmlToStream method for directly streaming the output to the ResponseStream.
The HtmlString and XmlString properties have been replaced by HtmlToString and XmlToString methods.
Haven't tested yet but this should make the library faster and reduce the memory footprint.
10/18/2011 Some minor changes and bug fixes. Added IFrame and an Ajax driven Calendar object. Raised version to 1.1.0.
To get the Ajax functionality you will need the AjaxRequest library from http://www.AjaxToolbox.com/
01/12/2012 Changed ScriptFiles and MetaTags from array to typed collection. Added Frame objects and jscript file for self referencing frames.
Removed public constructor from head and body objects and moved abstract methods to BaseNode base class. Raised version to 1.3.0
10/16/2012 Upgraded to target DotNet Framework 4.0. Raised version to 1.3.2