﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Coolite Forums / Coolite Toolkit / User Extensions and Plugins </title><generator>InstantForum.NET v4.1.4</generator><description>Coolite Forums</description><link>http://www.coolite.com/forums/</link><webMaster>do-not-reply@coolite.com</webMaster><lastBuildDate>Sun, 14 Mar 2010 04:29:04 GMT</lastBuildDate><ttl>20</ttl><item><title>[0.8.2] RowSelectionPaging plugin</title><link>http://www.coolite.com/forums/Topic26130-19-1.aspx</link><description>Hello,&lt;br&gt;&lt;br&gt;I need help adding this plugin to ext js. &lt;br&gt;&lt;br&gt;&lt;a href="http://www.extjs.com/forum/showthread.php?t=61282"&gt;http://www.extjs.com/forum/showthread.php?t=61282&lt;/a&gt;&lt;br&gt;&lt;br&gt;The reason is that I need on client side to get the count of selected rows &lt;u&gt;&lt;b&gt;using paging&lt;/b&gt;&lt;/u&gt;.&lt;br&gt;&lt;br&gt;Using getCount() from CheckboxSelectionModel only returns the selection from the current page :/&lt;br&gt;&lt;br&gt;THANKS&lt;br&gt;</description><pubDate>Mon, 25 Jan 2010 11:18:22 GMT</pubDate><dc:creator>Bruno Nogueira</dc:creator></item><item><title>ComboTree In PanelGrid</title><link>http://www.coolite.com/forums/Topic26040-19-1.aspx</link><description>&lt;br&gt; How To Use &lt;a href="http://www.coolite.com/forums/Topic16001-19-1.aspx"&gt;ComboTree&lt;/a&gt; In Grid?&lt;br&gt;&lt;br&gt;When Add ComboTree To Editor Of Columns, Tree Not Loaded And Occur The Error:&lt;br&gt;&lt;span role="presentation" class="objectBox objectBox-errorMessage hasTwisty hasBreakSwitch "&gt;this.root is undefined&lt;/span&gt;.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description><pubDate>Sun, 24 Jan 2010 00:40:18 GMT</pubDate><dc:creator>mrlayeghi</dc:creator></item><item><title>Stateful multi column span portal with full Asp.Net Lifecycle support</title><link>http://www.coolite.com/forums/Topic24882-19-1.aspx</link><description>&lt;span style="font-family: Verdana, Arial, Helvetica, sans-serif; "&gt;&lt;p&gt;&lt;span style="font-size: medium;"&gt;&lt;p&gt;Use Kalitte Dynamic Dashboards to integrate iGoogle like dashboards into your web application.&lt;/p&gt;&lt;p&gt;See live demo at http://www.dynamicdashboards.net.&lt;/p&gt;&lt;p&gt;Version 3.0 is ready. This is a major update and includes following enhacements.&lt;/p&gt;&lt;p&gt;- Now, a dashboard can have sections which can have different number of columns.&lt;br&gt;- Users can add more than one widget to a dashboard. Hierarchical widget type panel implemented.&lt;br&gt;- Dashboard can view links to other dashboard. So you don't need to put a dashboards menu.&lt;br&gt;- Developers can specify which items are displayed in both widget types and dashboards menu.&lt;br&gt;- Viewstate is always restored, no need to handle and refresh dashboard if viewstate is invalid.&lt;br&gt;- Enhanced syling is supported. You can both style dashboard, widgets and sections.&lt;br&gt;- Performance is optimized. Removed unnecessary calls to database (that's dashboard provider).&lt;br&gt;- Implemented widget property editor. No need to refresh dashboard when widget properties are changed.&lt;br&gt;- Implemented advanced animation. Developers can set different animations for adding new widgets, drag-drop of widgets or for a full dashboard content update.&lt;br&gt;- Adding a widget to a dashboard which has custom toolbar bug resolved.&lt;br&gt;- Changing dashboardkey after a postback is supported. You can view other dashboards without refreshing page.&lt;br&gt;- Dragging before a postback has finished prevented.&lt;br&gt;- Dashboard in a window function implemented. Users can view your dashboard in a drag-drop &amp;#119;indow.&lt;/p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;</description><pubDate>Mon, 04 Jan 2010 13:44:39 GMT</pubDate><dc:creator>tansu</dc:creator></item><item><title>Icon ComboBox</title><link>http://www.coolite.com/forums/Topic7788-19-1.aspx</link><description> Here is an extension to the ComboCox control to give your ListItems an Icon. The JavaScript is part of the ExtJs wiki example for illustrating how to extend Ext2 classes (&lt;a href="http://extjs.com/learn/Tutorial:Extending_Ext2_Class"&gt;http://extjs.com/learn/Tutorial:Extending_Ext2_Class&lt;/a&gt;).&lt;br&gt;&lt;br&gt;To use, extract the attachment to the ..\Coolite\Coolite.Ext.Web\Ext\Extensions path of the Coolite Toolkit source.  In visual studio, add the folder under the respective folder.  Ensure that the JS and CSS resources are configured as embedded resources.  Then recompile the toolkit.&lt;br&gt;&lt;br&gt;Here is an example:&lt;br&gt;&lt;br&gt;[code]&lt;br&gt;&amp;lt;%@ Page Language="C#" %&amp;gt;&lt;br&gt;&lt;br&gt;&amp;lt;%@ Register Assembly="Coolite.Ext.Web" Namespace="Coolite.Ext.Web" TagPrefix="ext" %&amp;gt;&lt;br&gt;&lt;br&gt;&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &lt;br&gt;    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&amp;gt;&lt;br&gt;&lt;br&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml" &amp;gt;&lt;br&gt;&amp;lt;head runat="server"&amp;gt;&lt;br&gt;    &amp;lt;title&amp;gt;IconCombo Test&amp;lt;/title&amp;gt;&lt;br&gt;    &amp;lt;script runat="server"&amp;gt;&lt;br&gt;        protected void Page_Load(object sender, EventArgs e)&lt;br&gt;        {&lt;br&gt;            if (!Ext.IsAjaxRequest)&lt;br&gt;            {&lt;br&gt;                SM1.RegisterIcon(Icon.FlagUs);&lt;br&gt;                SM1.RegisterIcon(Icon.FlagCa);&lt;br&gt;                SM1.RegisterIcon(Icon.FlagRu);&lt;br&gt;                SM1.RegisterIcon(Icon.FlagDe);&lt;br&gt;                SM1.RegisterIcon(Icon.FlagIt);&lt;br&gt;            }&lt;br&gt;        }&lt;br&gt;    &amp;lt;/script&amp;gt;&lt;br&gt;&amp;lt;/head&amp;gt;&lt;br&gt;&amp;lt;body&amp;gt;&lt;br&gt;    &amp;lt;form id="form1" runat="server"&amp;gt;&lt;br&gt;&lt;br&gt;        &amp;lt;ext:ScriptManager runat="server" ID="SM1" ScriptMode="Debug" /&amp;gt;&lt;br&gt;&lt;br&gt;        &amp;lt;ext:IconCombo &lt;br&gt;            ID="IconComboTest" &lt;br&gt;            TriggerAction="All"&lt;br&gt;            Mode="Local"&lt;br&gt;            Editable="false"&lt;br&gt;            ForceSelection="true"&lt;br&gt;            Select&amp;#111;nfocus="true"&lt;br&gt;            EmptyText="Select a country"&lt;br&gt;            runat="server"&amp;gt;&lt;br&gt;            &amp;lt;Items&amp;gt;&lt;br&gt;                &amp;lt;ext:IconListItem Text="United States" Icon="FlagUs" Value="US" /&amp;gt;&lt;br&gt;                &amp;lt;ext:IconListItem Text="Canada" Icon="FlagCa" Value="CA" /&amp;gt;&lt;br&gt;                &amp;lt;ext:IconListItem Text="Russia" Icon="FlagRu" Value="RU" /&amp;gt;&lt;br&gt;                &amp;lt;ext:IconListItem Text="Germany" Icon="FlagDe" Value="DE" /&amp;gt;&lt;br&gt;                &amp;lt;ext:IconListItem Text="Italy" Icon="FlagIt" Value="IT" /&amp;gt;&lt;br&gt;            &amp;lt;/Items&amp;gt;&lt;br&gt;        &amp;lt;/ext:IconCombo&amp;gt;&lt;br&gt;    &amp;lt;/form&amp;gt;&lt;br&gt;&amp;lt;/body&amp;gt;&lt;br&gt;&amp;lt;/html&amp;gt;&lt;br&gt;[/code]&lt;br&gt;&lt;br&gt;One thing that I would like to add is functionality to automagically register the icons to the scriptmanager, but no success in my initial attempts.  Also, I feel that I had to do a little too much work to extend the framework.  It was impossible for me to extend from ComboBoxBase class because the underlying Items collection is locked into using the ListItem class.  Maybe the Coolite Team can look into a solution for this; I'm thinking generics.&lt;br&gt;&lt;br&gt;-MC&lt;br&gt;</description><pubDate>Wed, 28 Jan 2009 09:30:57 GMT</pubDate><dc:creator>mindcore1</dc:creator></item><item><title>LockingGridPanel - Frozen Columns</title><link>http://www.coolite.com/forums/Topic17866-19-1.aspx</link><description>Coolite implementation of Condor's LockingGridPanel extension.&lt;div&gt;&lt;a href="http://extjs.com/forum/showthread.php?p=369120"&gt;http://extjs.com/forum/showthread.php?p=369120&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;You should be able to open the solution and make sure the reference to Coolite dlls are correct.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;</description><pubDate>Wed, 05 Aug 2009 20:01:10 GMT</pubDate><dc:creator>jchau</dc:creator></item><item><title>Using LINQ to dynamic sort data in GridPanel</title><link>http://www.coolite.com/forums/Topic18070-19-1.aspx</link><description> Hi, everybody,&lt;BR&gt;In the source code of mvc.Coolite.com, you can find a function names "GetCustomers" in DataController.cs. By it's signature &lt;BR&gt;[code]&lt;BR&gt;public AjaxStoreResult GetCustomers(int limit, int start, string dir, string sort)&lt;BR&gt;[/code]&lt;BR&gt;we can know it ueses dir and sort to sort data.&lt;BR&gt;But reading code, it uses LINQ to implement search and sort. We kown, LINQ doesn't support order by a static string. So this line&lt;BR&gt;[code]&lt;BR&gt;orderby(string.Concat(sort, " ", dir))&lt;BR&gt;[/code]&lt;BR&gt;was not working in fact.&lt;BR&gt;&lt;BR&gt;I think below is a better method to dynamic sort data using LINQ. (by vb.net)&lt;BR&gt;[code]&lt;BR&gt;Dim selector = GetType(Customer).GetProperty(sort)&lt;BR&gt;&lt;BR&gt;if String.Compare("ASC", dir, true) then&lt;BR&gt;    query = query.OrderBy(Function(c) selector.GetValue(c, nothing))&lt;BR&gt;else&lt;BR&gt;    query = query.OrderByDescending(Function(c) selector.GetValue(c, nothing))&lt;BR&gt;end if&lt;BR&gt;[/code]&lt;BR&gt;&lt;BR&gt;Maybe it needs refactor to better smell, but it's now working!</description><pubDate>Mon, 10 Aug 2009 06:28:53 GMT</pubDate><dc:creator>sunny_sh</dc:creator></item><item><title>Validation for Coolite Controls</title><link>http://www.coolite.com/forums/Topic22553-19-1.aspx</link><description>One thing I have always found lacking with Coolite ASP.NET servercontrols was integration with the validation framework of ASP.NET, thatprevents submission of a form if any control state is invalid accordingthe the Validators associated with that control.&lt;br&gt;&lt;br&gt;No doubt, the ExtJsclient controls that Coolite server controls translate to provide good&amp;amp; extensible client-side validation, but that does not perform theform from being submitted unless you have put your controls inside aFormPanel, &amp;amp; manually check for validation when the FormPanel issubmitted.&lt;br&gt;&lt;br&gt;I created a CooliteValidator class, that inherits fromthe ASP.NET BaseValidator class. You just drop the Vaidator on the form, andassociate it to a Coolite control (CooliteValidator throws an exceptionif you try to associate it to a non-Coolite TextFieldBase control).&lt;br&gt;&lt;br&gt;More details on the control are available on my blog post:&lt;br&gt;&lt;a href="http://www.rahulsingla.com/blog/coolite-control-validation"&gt;http://www.rahulsingla.com/blog/coolite-control-validation&lt;/a&gt;&lt;br&gt;&lt;br&gt;The code for the control can be downloaded from the link below the post. The direct link is below:&lt;br&gt;&lt;a href="http://www.rahulsingla.com/sites/default/files/content/blog/coolite_control_validation/CooliteValidationControl.zip"&gt;http://www.rahulsingla.com/sites/default/files/content/blog/coolite_control_validation/CooliteValidationControl.zip&lt;/a&gt;&lt;br&gt;&lt;br&gt;It would be interesting to see what the Coolite team thinks about my control. I would request them to have a look at it. If they find it suitable, I would be willing to turn it over for inclusion in the Coolite toolkit with absolutely no strings attached.&lt;br&gt;</description><pubDate>Mon, 09 Nov 2009 22:34:23 GMT</pubDate><dc:creator>r_honey</dc:creator></item><item><title>Create a Grid Plugin?</title><link>http://www.coolite.com/forums/Topic22446-19-1.aspx</link><description> Hello&lt;br&gt;&lt;br&gt;&lt;br&gt;i want to add a Plugin of gridpanel (RowActions), i was trying to add this to the project Coolite.Ext.UX but i cant add the new control in the page i get an error...&lt;br&gt;&lt;br&gt;&lt;br&gt;can someone pls tell me, how to create a Plugin????&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;thanks!!!&lt;br&gt;</description><pubDate>Fri, 06 Nov 2009 10:16:42 GMT</pubDate><dc:creator>Rothariger</dc:creator></item><item><title>File Upload Dialog</title><link>http://www.coolite.com/forums/Topic2735-19-1.aspx</link><description>&lt;P align=left&gt;&lt;STRONG&gt;&lt;FONT size=4&gt;Please see this post for the latest version: &lt;/FONT&gt;&lt;A href="http://www.coolite.com/forums/FindPost8229.aspx"&gt;&lt;FONT size=4&gt;http://www.coolite.com/forums/FindPost8229.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;BR&gt;&lt;/STRONG&gt;&lt;BR&gt;I know there's been talk about this in the forums before, but has anyone created the file upload dialog UX? The one here: &lt;A href="http://www.max-bazhenov.com/dev/upload-dialog-2.0/index.php"&gt;http://www.max-bazhenov.com/dev/upload-dialog-2.0/index.php&lt;/A&gt; &lt;BR&gt;&lt;BR&gt;I've been attempting to do it, but as this is my first ExtJS experience, it's slow going and I haven't made much progress. I know server controls very well (having authored multiple ones myself - include richtextboxes), but I'm still familiarizing myself w/ the ExtJS + Coolite APIs.&lt;BR&gt;&lt;BR&gt;I have it so I can drop in the control into the designer and it appears, but at runtime IE gives me a javascript error "Invalid source HTML for this operation." On Firefox 3.0, it appears, but the dialog is squished down. When you resize it, it takes on its correct min width/height.&lt;BR&gt;&lt;BR&gt;I figure this is probably a version issue since the javascript I pulled from that site is for 2.0 and ExtJS is on 2.2. However, I don't know where to begin to address the issue.&lt;BR&gt;&lt;BR&gt;Can anyone help? Here's the code I have so far:&lt;BR&gt;&lt;BR&gt;[code]&lt;BR&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;using&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;using&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.Web.UI;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;using&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.Drawing;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;using&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.ComponentModel;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;using&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; Coolite.Ext.Web;&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;[&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;assembly&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;: &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;WebResource&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;"ServerControls.Resources.Scripts.Ext.ux.UploadDialog.packed.js"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;"text/javascript"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;)]&lt;BR&gt;[&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;assembly&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;: &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;WebResource&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;"ServerControls.Resources.Scripts.Ext.ux.UploadDialog.js"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;"text/javascript"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;)]&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;namespace&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; ServerControls {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;    &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;[&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;ToolboxData&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;"&amp;lt;{0}:FileUploadDialog runat=\"server\" Title=\"Upload Files\" Collapsible=\"false\" Icon=\"None\" /&amp;gt;"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;)]&lt;BR&gt;&lt;FONT color=#808080&gt;    &lt;/FONT&gt;[&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;ToolboxBitmap&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;typeof&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;FileUploadDialog&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;), &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;"Resources.ToolboxIcons.&amp;#119;indow.bmp"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;)]&lt;BR&gt;&lt;FONT color=#808080&gt;    &lt;/FONT&gt;[&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;Designer&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;typeof&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;FileUploadDialogDesigner&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;))]&lt;BR&gt;&lt;FONT color=#808080&gt;    &lt;/FONT&gt;[&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;Description&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;"Specialized dialog for uploading files."&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;)]&lt;BR&gt;&lt;FONT color=#808080&gt;    &lt;/FONT&gt;[&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;InstanceOf&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(ClassName = &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;"Ext.ux.UploadDialog.Dialog"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;)]&lt;BR&gt;&lt;FONT color=#808080&gt;    &lt;/FONT&gt;[&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;ClientScript&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;BR&gt;&lt;FONT color=#808080&gt;        &lt;/FONT&gt;Type = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;typeof&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;FileUploadDialog&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;),&lt;BR&gt;&lt;FONT color=#808080&gt;        &lt;/FONT&gt;WebResource = &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;"ServerControls.Resources.Scripts.Ext.ux.UploadDialog.packed.js"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;,&lt;BR&gt;&lt;FONT color=#808080&gt;        &lt;/FONT&gt;WebResourceDebug = &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;"ServerControls.Resources.Scripts.Ext.ux.UploadDialog.js"&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#808080&gt;    &lt;/FONT&gt;)]&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#808080&gt;    &lt;/FONT&gt;public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;class&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;FileUploadDialog&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; : &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;Window&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#808080&gt;        &lt;/FONT&gt;protected&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;override&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;void&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; OnBeforeClientInit(&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;Observable&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; sender) {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#808080&gt;            &lt;/FONT&gt;base&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.OnBeforeClientInit(sender);&lt;BR&gt;&lt;FONT color=#808080&gt;        &lt;/FONT&gt;}&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#808080&gt;        &lt;/FONT&gt;protected&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;override&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;void&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; OnAfterClientInit(&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;Observable&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; sender) {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#808080&gt;            &lt;/FONT&gt;base&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.OnAfterClientInit(sender);&lt;BR&gt;        }&lt;BR&gt;    }&lt;BR&gt;}&lt;BR&gt;&lt;FONT size=3&gt;[/code]&lt;/FONT&gt;&lt;BR&gt;&lt;/FONT&gt;Here's the designer code:&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#000000 size=3&gt;[code]&lt;/FONT&gt;&lt;BR&gt;using&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;using&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.ComponentModel;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;using&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.ComponentModel.Design;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;using&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; Coolite.Ext.Web;&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;namespace&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; ServerControls {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;    internal&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;class&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;FileUploadDialogDesigner&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; : &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;ExtWebControlDesigner&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;        public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;override&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;bool&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; AllowResize {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;            get&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;                return&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;false&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;            }&lt;BR&gt;        }&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;        public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;override&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;string&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; GetDesignTimeHtml() {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;            if&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; (((&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;FileUploadDialog&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;)&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;this&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.Control).Hidden) {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;                return&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;string&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.Empty;&lt;BR&gt;            }&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;            return&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;base&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.CreatePlaceHolderDesignTimeHtml();&lt;BR&gt;        }&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;        private&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;DesignerActionListCollection&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; actionLists;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;        public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;override&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;DesignerActionListCollection&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; ActionLists {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;            get&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;                if&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; (actionLists == &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;null&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;) {&lt;BR&gt;                    actionLists = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;DesignerActionListCollection&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;();&lt;BR&gt;                    actionLists.Add(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;FileUploadDialogActionList&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;this&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.Component));&lt;BR&gt;                }&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;                return&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; actionLists;&lt;BR&gt;            }&lt;BR&gt;        }&lt;BR&gt;    }&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;    internal&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;class&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;FileUploadDialogActionList&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; : &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;WindowActionList&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;        public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; FileUploadDialogActionList(&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;IComponent&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; component) : &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;base&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(component) { &lt;BR&gt;        }&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;        public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;override&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;&lt;FONT color=#2b91af size=2&gt;DesignerActionItemCollection&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; GetSortedActionItems() {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;            return&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;base&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.GetSortedActionItems();&lt;BR&gt;        }&lt;BR&gt;    }&lt;BR&gt;}&lt;/FONT&gt;&lt;BR&gt;[/code]&lt;BR&gt;Sample web content page:&lt;BR&gt;&lt;BR&gt;[code]&lt;BR&gt;&lt;FONT size=2&gt;&amp;lt;%&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;@&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;Page&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Title&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="File Upload Dialog"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Language&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="C#"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;MasterPageFile&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="~/site.master"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;AutoEventWireup&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="true"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;CodeBehind&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="fileUploadDialog.aspx.cs"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Inherits&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="Sandbox.fileUploadDialog"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; %&amp;gt;&lt;BR&gt;&amp;lt;%&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;@&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;Register&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Assembly&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="Coolite.Ext.Web"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Namespace&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="Coolite.Ext.Web"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;TagPrefix&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="ext"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; %&amp;gt;&lt;BR&gt;&amp;lt;%&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;@&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;Register&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Assembly&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="ServerControls"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Namespace&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="ServerControls"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;TagPrefix&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="ux"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; %&amp;gt;&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&amp;lt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;asp&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;Content&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;ID&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="content"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;ContentPlaceHolderID&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="content"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;runat&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="server"&amp;gt;&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;    &amp;lt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;ext&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;ScriptManager&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;ID&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="ScriptManager"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;runat&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="server"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;/&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;    &amp;lt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;br&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;/&amp;gt;&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;    &amp;lt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#a31515 size=2&gt;ux&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;FileUploadDialog&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;ID&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="FileUploadDialog1"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;runat&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="server"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Collapsible&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="True"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Icon&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="Cart"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Title&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="Upload Files" &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Draggable&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="true"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Floating&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="true"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Maximizable&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="True"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Modal&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="True"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;ShowOnLoad&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="False"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;/&amp;gt;&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;    &amp;lt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;ext&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;Button&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;ID&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="Button1"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;runat&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="server"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Icon&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="ReportAdd"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Text&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="Upload Files"&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;        &amp;lt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;Listeners&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;            &amp;lt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;Click&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;Handler&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;="#{FileUploadDialog1}.show()"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;/&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;        &amp;lt;/&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;Listeners&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;    &amp;lt;/&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;ext&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;Button&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;BR&gt;&lt;BR&gt;&amp;lt;/&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;asp&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;Content&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;[/code]&lt;BR&gt;Thanks!&lt;/P&gt;</description><pubDate>Wed, 08 Oct 2008 22:55:03 GMT</pubDate><dc:creator>davidhoyt</dc:creator></item><item><title>Asp.Net Widget Toolkit with Coolite</title><link>http://www.coolite.com/forums/Topic21639-19-1.aspx</link><description>Hello,&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;New version of Widget Toolkit for Asp.Net for creating stateful portals is available. Version 2.3 includes dashboard framework provider for Ms-Access, many minor bug fixes and enhancements.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Dynamic Dashboards Framework automatically converts a simple Asp.Net user control to a draggable, collapsible, editable, refreshable and partial rendering widget.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Users can add portlets (or widgets) to their dashboards dynamically, drag or edit them. All viewstate and page lifecycle management is automatically done by the framework and widget positions are saved. Since provider based pattern is used, you can create new providers or use ready to use SQLDashboardProvider or SessionDashboardProvider.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;More information can be found at &lt;a href="http://www.dynamicdashboards.net/"&gt;http://www.dynamicdashboards.net&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;</description><pubDate>Sun, 25 Oct 2009 07:38:47 GMT</pubDate><dc:creator>tansu</dc:creator></item><item><title>[1.0] InputTextMask with GridPanel</title><link>http://www.coolite.com/forums/Topic21452-19-1.aspx</link><description>&lt;P&gt;Hi,&lt;BR&gt;&lt;BR&gt;I am trying to use the InputTextMask plugin with a GridPanel (added serverside) with v1.0 - does anyone know how to get this plugin to work with the GridPanel?&lt;BR&gt;&lt;BR&gt;Thanks &lt;/P&gt;</description><pubDate>Wed, 21 Oct 2009 00:22:29 GMT</pubDate><dc:creator>bethc</dc:creator></item><item><title>Implementing a ComboTree extension</title><link>http://www.coolite.com/forums/Topic16001-19-1.aspx</link><description>Hi guys,&lt;br&gt;&lt;br&gt;as i`ve already posted &lt;a href="http://coolite.com/forums/Topic15853-17-1.aspx"&gt;here&lt;/a&gt; I need a ComboTree component for my application.&lt;br&gt;&lt;br&gt;I am now trying to implement the extension on myself within the Ext.UX project.&lt;br&gt;&lt;br&gt;I`ve compiled my customized extension library successfully and the control is showing up in my application. &lt;br&gt;However, when i expand a node within the tree popup the assigned TreeLoader event is never raised server-side.&lt;br&gt;&lt;br&gt;A request to the server is made, but it fails with an error message ("control ext-gen1000 not found").&lt;br&gt;&lt;br&gt;Here is my code:&lt;br&gt;&lt;br&gt;ComboTree.js&lt;br&gt;[code]&lt;br&gt;Ext.namespace('Ext.ux');&lt;br&gt;&lt;br&gt;/**&lt;br&gt;*&lt;br&gt;* @class ComboTree&lt;br&gt;* @extends Ext.form.ComboBox&lt;br&gt;*/&lt;br&gt;Ext.ux.ComboTree = Ext.extend(Ext.form.ComboBox, {&lt;br&gt;    extStore: null,&lt;br&gt;    tree: null,&lt;br&gt;    treeId: 0,&lt;br&gt;    setValue: function(v) {&lt;br&gt;        var text = v;&lt;br&gt;        if (this.valueField) {&lt;br&gt;            var r = this.findExtRecord(this.valueField, v);&lt;br&gt;            if (r) {&lt;br&gt;                text = r.data[this.displayField];&lt;br&gt;            } else if (this.valueNotFoundText !== undefined) {&lt;br&gt;                text = this.valueNotFoundText;&lt;br&gt;            }&lt;br&gt;        }&lt;br&gt;        Ext.ux.ComboTree.superclass.setValue.call(this, text);&lt;br&gt;        this.lastSelectionText = text;&lt;br&gt;        if (this.hiddenField) {&lt;br&gt;            this.hiddenField.value = v;&lt;br&gt;        }&lt;br&gt;        this.value = v;&lt;br&gt;    },&lt;br&gt;    initComponent: function() {&lt;br&gt;        this.treeId = Ext.id();&lt;br&gt;        this.focusLinkId = Ext.id();&lt;br&gt;        Ext.apply(this, {&lt;br&gt;            store: new Ext.data.SimpleStore({&lt;br&gt;                fields: [],&lt;br&gt;                data: [[]]&lt;br&gt;            }),&lt;br&gt;            editable: false,&lt;br&gt;            shadow: false,&lt;br&gt;            mode: 'local',&lt;br&gt;            triggerAction: 'all',&lt;br&gt;            maxHeight: 200,&lt;br&gt;            tpl: '&amp;lt;tpl for="."&amp;gt;&amp;lt;div style="height:200px"&amp;gt;&amp;lt;div id="'&lt;br&gt;            + this.treeId + '"&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/tpl&amp;gt;',&lt;br&gt;            selectedClass: '',&lt;br&gt;            onSelect: Ext.emptyFn,&lt;br&gt;            valueField: 'id'&lt;br&gt;        });&lt;br&gt;        &lt;br&gt;        var treeConfig = {&lt;br&gt;            border: false,&lt;br&gt;            rootVisible: true,&lt;br&gt;            loader: this.loader // loader is assigned here&lt;br&gt;        };&lt;br&gt;        Ext.apply(treeConfig, this.treeConfig);&lt;br&gt;        if (!treeConfig.root) {&lt;br&gt;            treeConfig.root = new Ext.tree.AsyncTreeNode({&lt;br&gt;                text: 'treeRoot',&lt;br&gt;                id: '0'&lt;br&gt;            });&lt;br&gt;        }&lt;br&gt;        this.tree = new Ext.tree.TreePanel(treeConfig);&lt;br&gt;        this.on('expand', this.onExpand);&lt;br&gt;        this.tree.on('click', this.onClick, this);&lt;br&gt;        Ext.ux.ComboTree.superclass.initComponent.apply(this,&lt;br&gt;        arguments);&lt;br&gt;    },&lt;br&gt;    findExtRecord: function(prop, value) {&lt;br&gt;        var record;&lt;br&gt;        if (this.extStore != null) {&lt;br&gt;            if (this.extStore.getCount() &amp;gt; 0) {&lt;br&gt;                this.extStore.each(function(r) {&lt;br&gt;                    if (r.data[prop] == value) {&lt;br&gt;                        record = r;&lt;br&gt;                        return false;&lt;br&gt;                    }&lt;br&gt;                });&lt;br&gt;            }&lt;br&gt;        }&lt;br&gt;        return record;&lt;br&gt;    },&lt;br&gt;    onClick: function(node) {&lt;br&gt;        if (node.attributes.parameter == 9) {&lt;br&gt;            // &lt;br&gt;        } else {&lt;br&gt;            // &lt;br&gt;            this.setValue(node.text);&lt;br&gt;            this.hiddenField.value = node.id;&lt;br&gt;            this.collapse();&lt;br&gt;        }&lt;br&gt;    },&lt;br&gt;    onExpand: function() {&lt;br&gt;        this.tree.render(this.treeId);&lt;br&gt;    }&lt;br&gt;});&lt;br&gt;&lt;br&gt;&lt;br&gt;Ext.reg("combotree", Ext.ux.ComboTree);&lt;br&gt;[/code]&lt;br&gt;&lt;br&gt;ComboTree.cs&lt;br&gt;[code]&lt;br&gt;[assembly: WebResource("Coolite.Ext.UX.Extensions.ComboTree.resources.ComboTree.js", "text/javascript")]&lt;br&gt;&lt;br&gt;namespace Coolite.Ext.UX&lt;br&gt;{&lt;br&gt;    [Designer(typeof(EmptyDesigner))]&lt;br&gt;    [DefaultProperty("")]&lt;br&gt;    [Xtype("combotree")]&lt;br&gt;    [InstanceOf(ClassName = "Ext.ux.ComboTree")]&lt;br&gt;   [ClientScript(Type = typeof(ComboTree), WebResource ="Coolite.Ext.UX.Extensions.ComboTree.resources.ComboTree.js", FilePath= "ux/extensions/combotree/combotree.js")]&lt;br&gt;    [ToolboxData("&amp;lt;{0}:ComboTree runat=\"server\" Title=\"Combo tree\" Height=\"300\"&amp;gt;&amp;lt;/{0}:ComboTree&amp;gt;")]&lt;br&gt;    [Description("Combobox with tree functionality")]&lt;br&gt;    public class ComboTree : ComboBox&lt;br&gt;    {&lt;br&gt;        private TreeLoaderCollection treeLoader;&lt;br&gt;&lt;br&gt;        [ClientConfig("loader&amp;gt;Primary")]&lt;br&gt;        [Category("Config Options")]&lt;br&gt;        [NotifyParentProperty(true)]&lt;br&gt;        [DefaultValue(null)]&lt;br&gt;        [PersistenceMode(PersistenceMode.InnerProperty)]&lt;br&gt;        [Description("The root node for the tree.")]&lt;br&gt;        public virtual TreeLoaderCollection Loader&lt;br&gt;        {&lt;br&gt;            get&lt;br&gt;            {&lt;br&gt;                if (this.treeLoader == null)&lt;br&gt;                {&lt;br&gt;                    this.treeLoader = new TreeLoaderCollection();&lt;br&gt;                }&lt;br&gt;&lt;br&gt;                return this.treeLoader;&lt;br&gt;            }&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;[/code]&lt;br&gt;&lt;br&gt;Usage:&lt;br&gt;[code]&lt;br&gt;        &amp;lt;ux:ComboTree ID="_ct" runat="server"&amp;gt;&lt;br&gt;            &amp;lt;Loader&amp;gt;&lt;br&gt;                &amp;lt;ext:PageTreeLoader OnNodeLoad="LoadTreeNodeEntries"&amp;gt;&lt;br&gt;                &amp;lt;/ext:PageTreeLoader&amp;gt;&lt;br&gt;            &amp;lt;/Loader&amp;gt;&lt;br&gt;        &amp;lt;/ux:ComboTree&amp;gt;&lt;br&gt;[/code]&lt;br&gt;&lt;br&gt;I`mtrying to figure out whats the correct way to implement extensions bythe GMap extension, but i`m not sure if the code above is the right onefor my extension.&lt;br&gt;&lt;br&gt;Can you pelase help me ?&lt;br&gt;&lt;br&gt;Thx,&lt;br&gt;Peter&lt;br&gt;</description><pubDate>Mon, 29 Jun 2009 23:56:06 GMT</pubDate><dc:creator>pschojer</dc:creator></item><item><title>.Net Dashboard &amp; Widget Toolkit for Asp.Net</title><link>http://www.coolite.com/forums/Topic17395-19-1.aspx</link><description>&lt;span style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; color: rgb(64, 64, 64); -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; "&gt;Dashboard and Widget Framework for Asp.Net Version 1.7 is ready.&lt;/span&gt;&lt;div&gt;&lt;font color="#404040" face="Verdana, Arial, Helvetica, sans-serif" size="3"&gt;&lt;span style="font-size: 11px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font color="#404040" face="Verdana, Arial, Helvetica, sans-serif" size="3"&gt;&lt;span style="font-size: 11px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;Current version uses Coolite 8.1 and contains many enhancements and minor bug fixes.&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font color="#404040" face="Verdana, Arial, Helvetica, sans-serif" size="3"&gt;&lt;span style="font-size: 11px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font color="#404040" face="Verdana, Arial, Helvetica, sans-serif" size="3"&gt;&lt;span style="font-size: 11px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;What's new:&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font color="#404040" face="Verdana, Arial, Helvetica, sans-serif" size="3"&gt;&lt;span style="font-size: 11px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font color="#404040" face="Verdana, Arial, Helvetica, sans-serif" size="3"&gt;&lt;span style="font-size: 11px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;1. Added functionality to save widget Collapsed / Expand state. This can be controlled with WidgetType.SaveCollapsed property.&lt;br&gt;2. Widgets can be created collapsed state. This can be controlled with WidgetType.CreateCollapsed property.&lt;br&gt;3. Added Title Editable property. If this property is false, widget title cannot be edited.&lt;br&gt;4. Added ConfirmClose property to widget type. If this property is false, no confirmation dialog is created while user closes the widget.&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font color="#404040" face="Verdana, Arial, Helvetica, sans-serif" size="3"&gt;&lt;span style="font-size: 11px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;5. Dashboard and Widget Toolbar.&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font color="#404040" face="Verdana, Arial, Helvetica, sans-serif" size="3"&gt;&lt;span style="font-size: 11px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font color="#404040" face="Verdana, Arial, Helvetica, sans-serif" size="3"&gt;&lt;span style="font-size: 11px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;More information and a comprehensive demonstration can be found at &lt;a href="http://www.dynamicdashboards.net/default.aspx"&gt;http://www.dynamicdashboards.net/&lt;/a&gt;.&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;</description><pubDate>Wed, 29 Jul 2009 01:17:24 GMT</pubDate><dc:creator>tansu</dc:creator></item><item><title>New Plugin</title><link>http://www.coolite.com/forums/Topic10773-19-1.aspx</link><description>&lt;span&gt;&lt;span id="ctl10_ctlTopic"&gt;&lt;span id="ctl10_ctlTopic_ctlPanelBar_ctlTopicsRepeater_ctl04_lblFullMessage"&gt;&lt;pre&gt;Hi,&lt;br&gt;I&lt;br&gt;downloaded the Coolite.ux.InputMask and me interested in creating a&lt;br&gt;plugin to edit values (R$ 324.55 for example). Following the model&lt;br&gt;of InputMask tutorial and the link:&lt;br&gt;http://extjs.com/learn/Manual:Intro:Inheritance.&lt;br&gt;I started a plugin MyCurrency as the code below to test.&lt;br&gt;&lt;br&gt;MyCurrency.cs&lt;br&gt;[code]&lt;br&gt;&lt;br&gt;/******** &lt;br&gt;* Copyright (c) 2008 Coolite Inc.&lt;br&gt;&lt;br&gt;* Permission is hereby granted, free of charge, to any person obtaining a copy&lt;br&gt;* of this software and associated documentation files (the "Software"), to deal&lt;br&gt;* in the Software without restriction, including without limitation the rights&lt;br&gt;* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell&lt;br&gt;* copies of the Software, and to permit persons to whom the Software is&lt;br&gt;* furnished to do so, subject to the following conditions:&lt;br&gt;&lt;br&gt;* The above copyright notice and this permission notice shall be included in&lt;br&gt;* all copies or substantial portions of the Software.&lt;br&gt;&lt;br&gt;* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR&lt;br&gt;* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,&lt;br&gt;* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE&lt;br&gt;* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER&lt;br&gt;* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,&lt;br&gt;* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN&lt;br&gt;* THE SOFTWARE.&lt;br&gt;&lt;br&gt;* @version:        0.7.0&lt;br&gt;* @author:        Coolite Inc. http://www.coolite.com/&lt;br&gt;* @date:        2008-11-21&lt;br&gt;* @copyright:   Copyright (c) 2006-2008, Coolite Inc, or as noted within each &lt;br&gt;*                 applicable file LICENSE.txt file&lt;br&gt;* @license:        MIT&lt;br&gt;* @website:        http://www.coolite.com/&lt;br&gt;********/&lt;br&gt;&lt;br&gt;using System.ComponentModel;&lt;br&gt;using System.Web.UI;&lt;br&gt;using Coolite.Ext.Web;&lt;br&gt;using System.Drawing;&lt;br&gt;&lt;br&gt;namespace Coolite.Ext.UX&lt;br&gt;{&lt;br&gt;    /*&lt;br&gt;     * MyCurrency&lt;br&gt;    */&lt;br&gt;&lt;br&gt;    [InstanceOf(ClassName = "Ext.ux.netbox.MyCurrency")]&lt;br&gt;    [ClientScript(Type = typeof(MyCurrency), WebResource = "Coolite.Ext.UX.Plugins.MyCurrency.resources.MyCurrency.js")]&lt;br&gt;    [ToolboxBitmap(typeof(Coolite.Ext.UX.MyCurrency), "Build.Resources.ToolboxIcons.Plugin.bmp")]&lt;br&gt;    [ToolboxData("&amp;lt;{0}:MyCurrency runat=\"server\" /&amp;gt;")]&lt;br&gt;    [Description("MyCurrency plugin used for mask/regexp operations")]&lt;br&gt;    public class MyCurrency : Plugin&lt;br&gt;    {&lt;br&gt;        [ClientConfig]&lt;br&gt;        [Category("Config Options")]&lt;br&gt;        [DefaultValue("")]&lt;br&gt;        [NotifyParentProperty(true)]&lt;br&gt;        [Description("The MyCurrency")]&lt;br&gt;        public string Simbol&lt;br&gt;        {&lt;br&gt;            get&lt;br&gt;            {&lt;br&gt;                object obj = this.ViewState["Simbol"];&lt;br&gt;                return obj == null ? "" : (string)obj;&lt;br&gt;            }&lt;br&gt;            set&lt;br&gt;            {&lt;br&gt;                this.ViewState["Simbol"] = value;&lt;br&gt;            }&lt;br&gt;        }&lt;br&gt;&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;&lt;span&gt;&lt;span id="ctl10_ctlTopic"&gt;&lt;span id="ctl10_ctlTopic_ctlPanelBar_ctlTopicsRepeater_ctl04_lblFullMessage"&gt;&lt;pre&gt;[/code]&lt;span&gt;&lt;span id="ctl10_ctlTopic"&gt;&lt;span id="ctl10_ctlTopic_ctlPanelBar_ctlTopicsRepeater_ctl04_lblFullMessage"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br&gt;MyCurrency.js&lt;br&gt;&lt;span&gt;&lt;span id="ctl10_ctlTopic"&gt;&lt;span id="ctl10_ctlTopic_ctlPanelBar_ctlTopicsRepeater_ctl04_lblFullMessage"&gt;&lt;pre&gt;[code]&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br&gt;&lt;br&gt;Ext.namespace('Ext.ux.netbox');&lt;br&gt;/*&lt;br&gt; * MyCurrency&lt;br&gt; *&lt;br&gt;*/&lt;br&gt;Ext.ux.netbox.MyCurrency = function(simbol) {&lt;br&gt;    var simb = simb.Simbol;&lt;br&gt;};&lt;br&gt;Ext.extend(Ext.ux.netbox.MyCurrency, Ext.form.TextField, {&lt;br&gt;    theDocument: Ext.get(document),&lt;br&gt;    myCurrencyFn1: function() {&lt;br&gt;        // etc.&lt;br&gt;    },&lt;br&gt;    myCurrencyFn2: function() {&lt;br&gt;        // etc.&lt;br&gt;    }&lt;br&gt;});&lt;br&gt;Ext.ux.MyCurrency = Ext.ux.netbox.MyCurrency;&lt;span&gt;&lt;span id="ctl10_ctlTopic"&gt;&lt;span id="ctl10_ctlTopic_ctlPanelBar_ctlTopicsRepeater_ctl04_lblFullMessage"&gt;&lt;pre&gt;[/code]&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;I put the plugin on the page and run the error occurs:&lt;br&gt;&lt;br&gt;[code]&lt;br&gt;Ext.ux.netbox.MyCurrency is not a constructor&lt;br&gt;[/code]&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Any tips?&lt;br&gt;Thank you.&lt;br&gt;Maia.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;</description><pubDate>Thu, 26 Mar 2009 10:40:56 GMT</pubDate><dc:creator>Maia</dc:creator></item><item><title>Dynamic Dashboards</title><link>http://www.coolite.com/forums/Topic11854-19-1.aspx</link><description>We have developed a dynamic dashboard framework using Coolite Portal control. &lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Dynamic Dashboards Framework automatically converts a simple Asp.Net user control to a draggable, collapsible, editable, refreshable and partial rendering widget.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Users can add portlets (or widgets) to their dashboards dynamically, drag or edit them. All viewstate and page lifecycle management is automatically done by the framework and widget positions are saved. Since provider based pattern is used, you can create new providers or use ready to use SQLDashboardProvider or SessionDashboardProvider.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;More information can be found at &lt;a href="http://www.dynamicdashboards.net/"&gt;http://www.dynamicdashboards.net&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;</description><pubDate>Mon, 20 Apr 2009 07:25:22 GMT</pubDate><dc:creator>tansu</dc:creator></item><item><title>ValidationStatus plugin</title><link>http://www.coolite.com/forums/Topic10949-19-1.aspx</link><description>Hi,&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;We have added new StatusBar plugin (ValidationStatus) which shows validation summary of FormPanel. The plugin based on &lt;/div&gt;&lt;div&gt;&lt;a href="http://extjs.com/deploy/dev/examples/statusbar/statusbar-advanced.html"&gt;http://extjs.com/deploy/dev/examples/statusbar/statusbar-advanced.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;You can find Coolite sample in SVN&lt;/div&gt;&lt;div&gt;trunk\Coolite.Examples\Examples\Toolbar\StatusBar\Advanced\Default.aspx  &lt;/div&gt;</description><pubDate>Mon, 30 Mar 2009 09:15:52 GMT</pubDate><dc:creator>vladsch</dc:creator></item><item><title>new TabFx plugin</title><link>http://www.coolite.com/forums/Topic10449-19-1.aspx</link><description>I've added a new TabFx plugin which fires a visual effect when a Tab becomes Active or is selected. The default fx is "frame" and shows a ripple of exploding attenuating borders around the Tab.&lt;br&gt;&lt;br&gt;&lt;b&gt;Example&lt;/b&gt;&lt;br&gt;&lt;br&gt;[code]&amp;lt;ext:TabPanel ID="TabPanel1" runat="server" ActiveTabIndex="0" Height="185" Width="300"&amp;gt;&lt;br&gt;    &amp;lt;Tabs&amp;gt;&lt;br&gt;        &amp;lt;ext:Tab ID="Tab1" runat="server" Title="Tab 1" /&amp;gt;&lt;br&gt;        &amp;lt;ext:Tab ID="Tab2" runat="server" Title="Tab 2" /&amp;gt;&lt;br&gt;        &amp;lt;ext:Tab ID="Tab3" runat="server" Title="Tab 3" /&amp;gt;&lt;br&gt;    &amp;lt;/Tabs&amp;gt;&lt;br&gt;    &amp;lt;Plugins&amp;gt;&lt;br&gt;        &amp;lt;ext:TabFx runat="server" /&amp;gt;&lt;br&gt;    &amp;lt;/Plugins&amp;gt;&lt;br&gt;&amp;lt;/ext:TabPanel&amp;gt;[/code]&lt;br&gt;&lt;br&gt;Hope this helps.&lt;br&gt;&lt;br&gt;</description><pubDate>Sun, 22 Mar 2009 18:57:28 GMT</pubDate><dc:creator>geoffrey.mcgill</dc:creator></item><item><title>#{referencing} UserControls</title><link>http://www.coolite.com/forums/Topic7105-19-1.aspx</link><description>Hey, using Coolite for the first time on a project and it's pretty exciting. &lt;br&gt;&lt;br&gt;I use UserControls pretty extensively as sort of "pre-configured" Controls (like bundling a Window and it's children in a user control for re-use). But then it's difficult to reference the Ext client objects them from parent controls, especially from a Handler attribute where you can't use &amp;lt;%= My&amp;#119;indow.ClientID %&amp;gt; idiom.&lt;br&gt;&lt;br&gt;One thing I've added to the code on my end is an IClientReferenceProvider interface that provides a hook into the TokenUtils.ReplaceIDTokens() method:&lt;br&gt;&lt;br&gt;&lt;br&gt;[code]public static string ReplaceIDTokens(string script, Control seed)&lt;br&gt;{&lt;br&gt;    Regex regex = new Regex(TokenUtils.IDPattern);&lt;br&gt;    MatchCollection matches = regex.Matches(script);&lt;br&gt;    Control control = null;&lt;br&gt;    string id = "";&lt;br&gt;    foreach (Match match in matches)&lt;br&gt;    {&lt;br&gt;        id = match.Value.Remove(match.Value.Length - 1).Remove(0, 2);&lt;br&gt;&lt;br&gt;        control = ControlUtils.FindControl(seed, id);&lt;br&gt;&lt;br&gt;        if (control != null)&lt;br&gt;        {&lt;br&gt;            if (control is Observable)&lt;br&gt;            {&lt;br&gt;                script = script.Replace(match.Value, control.ClientID);&lt;br&gt;            } // ADDED&lt;br&gt;            else if (control is IClientReferenceProvider)&lt;br&gt;            { &lt;br&gt;                script = script.Replace(match.Value, ((IClientReferenceProvider)control).GetClientReference());&lt;br&gt;            } // END ADDED&lt;br&gt;            else&lt;br&gt;            {&lt;br&gt;                script = script.Replace(match.Value, string.Concat("Ext.get(\"", control.ClientID, "\")"));&lt;br&gt;            }&lt;br&gt;        }&lt;br&gt;        else&lt;br&gt;        {&lt;br&gt;            script = script.Replace(match.Value, string.Concat("Ext.get(\"", match.Value.Remove(match.Value.Length - 1).Remove(0, 2), "\")"));&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;&lt;br&gt;    return script;&lt;br&gt;}[/code]&lt;br&gt;&lt;br&gt;and then, UserControls implementing IClientReferenceProvider can either return the ID of the main container control or even return a reference to a custom object that provides a client interface to parent objects like:&lt;br&gt;&lt;br&gt;MyUserControl.ascx&lt;br&gt;&lt;br&gt;[code]&amp;lt;script type="text/javascript"&amp;gt;&lt;br&gt;&amp;lt;%= ClientID %&amp;gt; = {&lt;br&gt;&lt;br&gt;show: function(activityID) { &lt;br&gt;&amp;lt;%= Store1.ClientID %&amp;gt;.baseParams.activityID = activityID;&lt;br&gt;        &amp;lt;%= Store1.ClientID %&amp;gt;.load();&lt;br&gt;        &amp;lt;%= Window1.ClientID %&amp;gt;.show();&lt;br&gt;}&lt;br&gt;};&lt;br&gt;&amp;lt;/script&amp;gt;[/code]&lt;br&gt;&lt;br&gt;MyUserControl.ascx.cs&lt;br&gt;&lt;br&gt;[code]public class MyUserControl : UserControl, IClientReferenceProvider&lt;br&gt;{&lt;br&gt;public string GetClientReference() {&lt;br&gt;return ClientID;&lt;br&gt;}&lt;br&gt;}[/code]&lt;br&gt;&lt;br&gt;It's not 100% elegent but it's proved useful in UserControls that build heavily on existing controls with minimal additional logic. What do you think? Maybe I'm altogether missing a better way of doing this...?&lt;br&gt;</description><pubDate>Fri, 16 Jan 2009 05:52:55 GMT</pubDate><dc:creator>abertram</dc:creator></item><item><title>CenterLayout</title><link>http://www.coolite.com/forums/Topic1551-19-1.aspx</link><description>Hello,&lt;br&gt;&lt;br&gt;I've created a simple quick Coolite extension for the customer layout &lt;i&gt;Center&lt;/i&gt; which can be demonstrated at the following sample from ExtJS http://www.extjs.com/deploy/dev/examples/layout-browser/layout-browser.html&lt;br&gt;&lt;br&gt;What did I have to do?&lt;br&gt;&lt;br&gt;1.  Create a new folder called Coolite.Ext.UX\Extensions\CenterLayout from the SVN trunk&lt;br&gt;&lt;br&gt;2.  Create a new class called CenterLayout.cs with the following code:&lt;br&gt;&lt;br&gt;[code]&lt;br&gt;/******** &lt;br&gt; * This file is part of the Coolite UX Toolkit.&lt;br&gt;&lt;br&gt; * The Coolite UX Toolkit is free software: you can redistribute it and/or modify&lt;br&gt; * it under the terms of the GNU Lesser General Public License as published by&lt;br&gt; * the Free Software Foundation, either version 3 of the License, or&lt;br&gt; * (at your option) any later version.&lt;br&gt;&lt;br&gt; * The Coolite UX Toolkit is distributed in the hope that it will be useful,&lt;br&gt; * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br&gt; * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br&gt; * GNU Lesser General Public License for more details.&lt;br&gt;&lt;br&gt; * You should have received a copy of the GNU Lesser General Public License&lt;br&gt; * along with the Coolite Toolkit.  If not, see &amp;lt;http://www.gnu.org/licenses/&amp;gt;.&lt;br&gt; */&lt;br&gt;&lt;br&gt;/*&lt;br&gt;* @version:        0.6.0 Preview-1&lt;br&gt;* @author:        Timothy Grant Vogelsang&lt;br&gt;*                Coolite Inc. http://www.coolite.com/&lt;br&gt;* @date:        2008-09-07&lt;br&gt;* @copyright:    Copyright (c) 2006-2008, Coolite Inc, or as noted within each &lt;br&gt;*                 applicable file LICENSE.txt file&lt;br&gt;* @license:        LGPL 3.0 License&lt;br&gt;* @website:        http://www.coolite.com/&lt;br&gt; ********/&lt;br&gt;using System;&lt;br&gt;using System.ComponentModel;&lt;br&gt;using System.Drawing;&lt;br&gt;using System.Drawing.Design;&lt;br&gt;using System.Web.UI;&lt;br&gt;using Coolite.Ext.Web;&lt;br&gt;&lt;br&gt;namespace Coolite.Ext.UX&lt;br&gt;{&lt;br&gt;    [Layout("ux.center")]&lt;br&gt;    [ClientScript(Type = typeof(CenterLayout), WebResource = "Coolite.Ext.UX.Extensions.CenterLayout.resources.CenterLayout.js")]&lt;br&gt;    [ClientStyle(Type = typeof(CenterLayout), WebResource = "Coolite.Ext.UX.Extensions.CenterLayout.resources.css.CenterLayout.css")]&lt;br&gt;    [ToolboxData("&amp;lt;{0}:CenterLayout runat=\"server\"&amp;gt;&amp;lt;/{0}:CenterLayout&amp;gt;")]&lt;br&gt;    [Designer(typeof(EmptyDesigner))]&lt;br&gt;    public class CenterLayout : ContainerLayout&lt;br&gt;    {&lt;br&gt;        protected override bool SingleItemMode&lt;br&gt;        {&lt;br&gt;            get&lt;br&gt;            {&lt;br&gt;                return true;&lt;br&gt;            }&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;[/code]&lt;br&gt;&lt;br&gt;You will notice, I'm inheriting from the &lt;i&gt;ContainerLayout&lt;/i&gt; since that is the base for all Layouts in ExtJS and Coolite.  The CenterLayout works a lot like the &lt;i&gt;FitLayout&lt;/i&gt; which only allows a single item, so I've had to override the &lt;i&gt;SingleItemMode&lt;/i&gt; to always return &lt;i&gt;true&lt;/i&gt;.&lt;br&gt;&lt;br&gt;3.  Created a &lt;i&gt;resources&lt;/i&gt; directory under Coolite.Ext.UX\Extensions\CenterLayout&lt;br&gt;&lt;br&gt;4.  Added the following 2 files as &lt;b&gt;embedded resources&lt;/b&gt; (very important):&lt;br&gt;&lt;br&gt;Coolite.Ext.UX\Extensions\CenterLayout\resources\css\CenterLayout.css&lt;br&gt;[code]&lt;br&gt;/* &lt;br&gt; * Ext.ux.layout.CenterLayout&lt;br&gt; */&lt;br&gt;.ux-layout-center-item {&lt;br&gt;    margin:0 auto;&lt;br&gt;    text-align:left;&lt;br&gt;}&lt;br&gt;.ux-layout-center .x-panel-body,  /* if the container is a panel */&lt;br&gt;body.ux-layout-center {           /* if the container is the doc body (for viewport) */&lt;br&gt;    text-align:center;&lt;br&gt;}&lt;br&gt;[/code]&lt;br&gt;&lt;br&gt;Coolite.Ext.UX\Extensions\CenterLayout\resources\CenterLayout.js&lt;br&gt;[code]&lt;br&gt;/*&lt;br&gt; * Ext JS Library 2.1&lt;br&gt; * Copyright(c) 2006-2008, Ext JS, LLC.&lt;br&gt; * licensing@extjs.com&lt;br&gt; * &lt;br&gt; * http://extjs.com/license&lt;br&gt; */&lt;br&gt;&lt;br&gt;&lt;br&gt;// We are adding these custom layouts to a namespace that does not&lt;br&gt;// exist by default in Ext, so we have to add the namespace first:&lt;br&gt;Ext.ns('Ext.ux.layout');&lt;br&gt;&lt;br&gt;/*&lt;br&gt; * ================  CenterLayout  =======================&lt;br&gt; */&lt;br&gt;/**&lt;br&gt; * @class Ext.ux.layout.CenterLayout&lt;br&gt; * @extends Ext.layout.FitLayout&lt;br&gt; * &amp;lt;p&amp;gt;This is a very simple layout style used to center contents within a container.  This layout works within&lt;br&gt; * nested containers and can also be used as expected as a Viewport layout to center the page layout.&amp;lt;/p&amp;gt;&lt;br&gt; * &amp;lt;p&amp;gt;As a subclass of FitLayout, CenterLayout expects to have a single child panel of the container that uses &lt;br&gt; * the layout.  The layout does not require any config options, although the child panel contained within the&lt;br&gt; * layout must provide a fixed or percentage width.  The child panel's height will fit to the container by&lt;br&gt; * default, but you can specify &amp;lt;tt&amp;gt;autoHeight:true&amp;lt;/tt&amp;gt; to allow it to autosize based on its content height.  &lt;br&gt; * Example usage:&amp;lt;/p&amp;gt; &lt;br&gt; * &amp;lt;pre&amp;gt;&amp;lt;code&amp;gt;&lt;br&gt;// The content panel is centered in the container&lt;br&gt;var p = new Ext.Panel({&lt;br&gt;    title: 'Center Layout',&lt;br&gt;    layout: 'ux.center',&lt;br&gt;    items: [{&lt;br&gt;        title: 'Centered Content',&lt;br&gt;        width: '75%',&lt;br&gt;        html: 'Some content'&lt;br&gt;    }]&lt;br&gt;});&lt;br&gt;&lt;br&gt;// If you leave the title blank and specify no border&lt;br&gt;// you'll create a non-visual, structural panel just&lt;br&gt;// for centering the contents in the main container.&lt;br&gt;var p = new Ext.Panel({&lt;br&gt;    layout: 'ux.center',&lt;br&gt;    border: false,&lt;br&gt;    items: [{&lt;br&gt;        title: 'Centered Content',&lt;br&gt;        width: 300,&lt;br&gt;        autoHeight: true,&lt;br&gt;        html: 'Some content'&lt;br&gt;    }]&lt;br&gt;});&lt;br&gt;&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&lt;br&gt; */&lt;br&gt;Ext.ux.layout.CenterLayout = Ext.extend(Ext.layout.FitLayout, {&lt;br&gt;    // private&lt;br&gt;    setItemSize : function(item, size){&lt;br&gt;        this.container.addClass('ux-layout-center');&lt;br&gt;        item.addClass('ux-layout-center-item');&lt;br&gt;        if(item &amp;amp;&amp;amp; size.height &amp;gt; 0){&lt;br&gt;            if(item.width){&lt;br&gt;                size.width = item.width;&lt;br&gt;            }&lt;br&gt;            item.setSize(size);&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;});&lt;br&gt;Ext.Container.LAYOUTS['ux.center'] = Ext.ux.layout.CenterLayout;&lt;br&gt;[/code]&lt;br&gt;&lt;br&gt;5.  Added registration for web resource files to the AssemblyInfo.cs of the Coolite.Ext.UX project:&lt;br&gt;&lt;br&gt;[assembly: WebResource("Coolite.Ext.UX.Extensions.CenterLayout.resources.CenterLayout.js", "text/javascript")]&lt;br&gt;[assembly: WebResource("Coolite.Ext.UX.Extensions.CenterLayout.resources.css.CenterLayout.css", "text/css")]&lt;br&gt;&lt;br&gt;6. Rebuild and look a new usable control ;)&lt;br&gt;&lt;br&gt;Sincerely,&lt;br&gt;Timothy&lt;br&gt;</description><pubDate>Sun, 07 Sep 2008 08:11:06 GMT</pubDate><dc:creator>Timothy</dc:creator></item><item><title>Coolite User Themes</title><link>http://www.coolite.com/forums/Topic767-19-1.aspx</link><description> &lt;br&gt;Hi all,&lt;br&gt;&lt;br&gt;does anyone manage to use new, additional themes with Coolite Toolkit?&lt;br&gt;&lt;br&gt;Matteo&lt;br&gt;</description><pubDate>Mon, 23 Jun 2008 07:42:31 GMT</pubDate><dc:creator>matteo</dc:creator></item></channel></rss>