Zeta Web Control Library
A small set of enhanced ASP.NET controls (e.g. an AJAX-enabled ClickOnceButton)

Introduction
Zeta Web Control Library is a .NET 2.0 class library that provides you with some enhanced ASP.NET 2.0 web controls.
What's In?
The library contains the following controls:
- An enhanced version of Eric Plowe's ClickOnceButton control. This is a button control that disables itself after being clicked for avoiding that the user clicks the button twice.
- An enhanced version of Peter Bromberg's SessionTimeoutControl control. This allows for redirecting to an URL when a user's session timed out.
- An enhanced GridView control. This control enables you to persist a sort state to an external storage of your choice by subscribing to events or deriving from the control and overriding virtual functions.
The enhanced ClickOnceButton
has additional features for working well in an ASP.NET AJAX environment as well as for disabling other buttons on a page, either all or selectively:
<zeta:ClickOnceButton
DisableAfterClick="true"
Mode="ThisAndRelatedButtons"
runat="server"
ID="CmdSave"
Text="Save"
OnClick="CmdSave_Click">
<zeta:RelatedButton ButtonControlID="CmdCancel" />
<zeta:RelatedButton ButtonControlID="CmdDeactivate" />
<zeta:RelatedButton ButtonControlID="CmdActivate" />
<zeta:RelatedButton ButtonControlID="CmdReleaseImmediately" />
</zeta:ClickOnceButton>
Using the Code
To include the code in your own ASP.NET web project, add a reference to the "ZetaWebControlLib.dll" to your project.
Next, add a control reference to the controls in the library. This can be done either on each ASPX page where you want to use a control, or centrally in the "web.config" file.
In the "web.config" file, the syntax is:
<add tagPrefix="zeta" namespace="ZetaWebControlLib.Button" assembly="ZetaWebControlLib"/>
To reference the control on a single ASPX page (or in an ASCX control), add the following reference at the top of the file:
<%@ Register Namespace="ZetaWebControlLib.Button" TagPrefix="zeta" %>
To finally create an instance of a control on your ASPX page (or in your ASCX control), use the following syntax:
<zeta:ClickOnceButton
runat="server"
DisableAfterClick="true"
ID="CmdOK"
Text="Submit the form"
OnClick="CmdOK_Click" />
Points of Interest
While this article is mostly a very brief overview and does not go into implementation details, I still hope that you like it and that I've shown enough to enable you to decide whether a control in here is usable for your scenario.
For questions, comments and feedback (which I love to hear!) please use the comments section below at the bottom of this article.
History
- 2010-01-26 - Added missing file from source package
- 2009-11-26 - First release to CodeProject.com