<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
	<CodeSnippet Format="1.0.0">
		<Header>
			<Title>Event</Title>
			<Description>Creates a C# style event property construct and methods for an event without parameters, for classes derived from ASP.NET System.Control</Description>
			<Author>Alan McBee</Author>
			<Shortcut>event</Shortcut>
			<SnippetTypes>
				<SnippetType>Expansion</SnippetType>
			</SnippetTypes>
		</Header>
		<Snippet>
			<Declarations>
				<Literal>
					<ID>event</ID>
					<Default>Event</Default>
				</Literal>
			</Declarations>
			<Code Language="CSharp">
				<![CDATA[
#region $event$ Event
protected static readonly object $event$Event = new object();

public event EventHandler $event$
{
	add { Events.AddHandler($event$Event, value); }
	remove { Events.RemoveHandler($event$Event, value); }
}

protected virtual void On$event$()
{
	EventHandler $event$Handler = (EventHandler)Events[$event$Event];
	if (null != $event$Handler)
	{
		$event$Handler(this, EventArgs.Empty);
	}
}

protected virtual void On$event$(EventArgs e)
{
	EventHandler $event$Handler = (EventHandler)Events[$event$Event];
	if (null != $event$Handler)
	{
		$event$Handler(this, e);
	}
}

#endregion
]]>
			</Code>
		</Snippet>
	</CodeSnippet>
</CodeSnippets>