Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Framework / System / Windows / EventSetter.cs / 1 / EventSetter.cs
/****************************************************************************\
*
* File: SetterBase.cs
*
* TargetType event setting class.
*
* Copyright (C) 2004 by Microsoft Corporation. All rights reserved.
*
\***************************************************************************/
using System;
using System.ComponentModel; // EditorBrowsableAttribute
namespace System.Windows
{
///
/// TargetType event setting class.
///
public class EventSetter : SetterBase
{
///
/// EventSetter construction
///
public EventSetter()
{
}
///
/// EventSetter construction
///
public EventSetter(RoutedEvent routedEvent, Delegate handler)
{
if (routedEvent == null)
{
throw new ArgumentNullException("routedEvent");
}
if (handler == null)
{
throw new ArgumentNullException("handler");
}
_event = routedEvent;
_handler = handler;
}
///
/// Event that is being set by this setter
///
public RoutedEvent Event
{
get { return _event; }
set
{
if (value == null)
{
throw new ArgumentNullException("value");
}
CheckSealed();
_event = value;
}
}
///
/// Handler delegate that is being set by this setter
///
public Delegate Handler
{
get { return _handler; }
set
{
if (value == null)
{
throw new ArgumentNullException("value");
}
CheckSealed();
_handler = value;
}
}
///
/// HandledEventsToo flag that is being set by this setter
///
[EditorBrowsable(EditorBrowsableState.Never)]
public bool HandledEventsToo
{
get { return _handledEventsToo; }
set
{
CheckSealed();
_handledEventsToo = value;
}
}
//
// Do the error checking that we can only do once all of the properties have been
// set, then call up to base.
//
internal override void Seal()
{
if (_event == null)
{
throw new ArgumentException(SR.Get(SRID.NullPropertyIllegal, "EventSetter.Event"));
}
if (_handler == null)
{
throw new ArgumentException(SR.Get(SRID.NullPropertyIllegal, "EventSetter.Handler"));
}
if (_handler.GetType() != _event.HandlerType)
{
throw new ArgumentException(SR.Get(SRID.HandlerTypeIllegal));
}
base.Seal();
}
private RoutedEvent _event;
private Delegate _handler;
private bool _handledEventsToo;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
/****************************************************************************\
*
* File: SetterBase.cs
*
* TargetType event setting class.
*
* Copyright (C) 2004 by Microsoft Corporation. All rights reserved.
*
\***************************************************************************/
using System;
using System.ComponentModel; // EditorBrowsableAttribute
namespace System.Windows
{
///
/// TargetType event setting class.
///
public class EventSetter : SetterBase
{
///
/// EventSetter construction
///
public EventSetter()
{
}
///
/// EventSetter construction
///
public EventSetter(RoutedEvent routedEvent, Delegate handler)
{
if (routedEvent == null)
{
throw new ArgumentNullException("routedEvent");
}
if (handler == null)
{
throw new ArgumentNullException("handler");
}
_event = routedEvent;
_handler = handler;
}
///
/// Event that is being set by this setter
///
public RoutedEvent Event
{
get { return _event; }
set
{
if (value == null)
{
throw new ArgumentNullException("value");
}
CheckSealed();
_event = value;
}
}
///
/// Handler delegate that is being set by this setter
///
public Delegate Handler
{
get { return _handler; }
set
{
if (value == null)
{
throw new ArgumentNullException("value");
}
CheckSealed();
_handler = value;
}
}
///
/// HandledEventsToo flag that is being set by this setter
///
[EditorBrowsable(EditorBrowsableState.Never)]
public bool HandledEventsToo
{
get { return _handledEventsToo; }
set
{
CheckSealed();
_handledEventsToo = value;
}
}
//
// Do the error checking that we can only do once all of the properties have been
// set, then call up to base.
//
internal override void Seal()
{
if (_event == null)
{
throw new ArgumentException(SR.Get(SRID.NullPropertyIllegal, "EventSetter.Event"));
}
if (_handler == null)
{
throw new ArgumentException(SR.Get(SRID.NullPropertyIllegal, "EventSetter.Handler"));
}
if (_handler.GetType() != _event.HandlerType)
{
throw new ArgumentException(SR.Get(SRID.HandlerTypeIllegal));
}
base.Seal();
}
private RoutedEvent _event;
private Delegate _handler;
private bool _handledEventsToo;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CancellationHandler.cs
- WindowsAuthenticationEventArgs.cs
- SoapAttributeAttribute.cs
- ISFTagAndGuidCache.cs
- EraserBehavior.cs
- BuildResultCache.cs
- StaticSiteMapProvider.cs
- FixedTextSelectionProcessor.cs
- SortedSetDebugView.cs
- FileChangesMonitor.cs
- PrivilegeNotHeldException.cs
- TextTabProperties.cs
- SqlUserDefinedTypeAttribute.cs
- Header.cs
- ThousandthOfEmRealPoints.cs
- IFlowDocumentViewer.cs
- QuaternionValueSerializer.cs
- CompatibleIComparer.cs
- EventListener.cs
- ReachDocumentReferenceSerializerAsync.cs
- MarkupExtensionSerializer.cs
- XmlSchemaParticle.cs
- LogReserveAndAppendState.cs
- SpeechEvent.cs
- WbemProvider.cs
- ItemCollection.cs
- HeaderedItemsControl.cs
- MimeXmlImporter.cs
- AutomationPropertyInfo.cs
- StreamSecurityUpgradeAcceptor.cs
- WebPageTraceListener.cs
- ArrayTypeMismatchException.cs
- FontNameConverter.cs
- ParameterReplacerVisitor.cs
- ThousandthOfEmRealDoubles.cs
- AdornerHitTestResult.cs
- RuleProcessor.cs
- PeerUnsafeNativeCryptMethods.cs
- DragCompletedEventArgs.cs
- CollectionsUtil.cs
- X509PeerCertificateAuthentication.cs
- FormsIdentity.cs
- SystemPens.cs
- FamilyTypeface.cs
- ApplicationBuildProvider.cs
- StringValidator.cs
- Baml2006KeyRecord.cs
- BindingCollection.cs
- odbcmetadatafactory.cs
- TimeSpanValidator.cs
- PropertyEmitterBase.cs
- AttributeSetAction.cs
- MD5CryptoServiceProvider.cs
- Propagator.cs
- TriggerActionCollection.cs
- SafeLocalMemHandle.cs
- MessageSmuggler.cs
- RemoteWebConfigurationHostServer.cs
- JsonWriter.cs
- FormViewInsertEventArgs.cs
- QilXmlWriter.cs
- SafeUserTokenHandle.cs
- _NegoStream.cs
- IsolatedStorageFile.cs
- XPathNodeList.cs
- MemberCollection.cs
- ListControl.cs
- DefaultTextStore.cs
- SqlInternalConnectionSmi.cs
- RegexCaptureCollection.cs
- Vector3DKeyFrameCollection.cs
- Vector.cs
- RowSpanVector.cs
- GridViewPageEventArgs.cs
- DocumentPage.cs
- AesCryptoServiceProvider.cs
- ConfigurationLoaderException.cs
- WebControlAdapter.cs
- FlowLayoutPanel.cs
- DuplicateWaitObjectException.cs
- DataGridCommandEventArgs.cs
- XPathBinder.cs
- OdbcEnvironmentHandle.cs
- DataServiceQueryOfT.cs
- DotExpr.cs
- DurableInstance.cs
- BigIntegerStorage.cs
- StreamSecurityUpgradeInitiatorAsyncResult.cs
- ContextMenuStripGroup.cs
- ObjectStateManagerMetadata.cs
- XmlResolver.cs
- FontFaceLayoutInfo.cs
- TableColumnCollection.cs
- BamlMapTable.cs
- DBProviderConfigurationHandler.cs
- HttpDebugHandler.cs
- PrintDialog.cs
- DataRelationPropertyDescriptor.cs
- FixedSOMFixedBlock.cs
- FixedTextView.cs