Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / EventSetter.cs / 1305600 / 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 /// [TypeConverter(typeof(System.Windows.Markup.EventSetterHandlerConverter))] 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 /// [TypeConverter(typeof(System.Windows.Markup.EventSetterHandlerConverter))] 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
- Parameter.cs
- ProxyGenerator.cs
- XPathException.cs
- ExpressionQuoter.cs
- BlockExpression.cs
- ChannelPoolSettingsElement.cs
- RegionInfo.cs
- FlowPosition.cs
- FontCacheLogic.cs
- XmlToDatasetMap.cs
- DocumentSequence.cs
- ReadOnlyDataSource.cs
- ReferencedType.cs
- PageParserFilter.cs
- AbandonedMutexException.cs
- CheckBoxFlatAdapter.cs
- ChangeNode.cs
- ListViewItem.cs
- RealizationContext.cs
- RegexWorker.cs
- HtmlTable.cs
- GroupBoxAutomationPeer.cs
- InstanceOwnerException.cs
- TypeBuilder.cs
- ServerIdentity.cs
- ToolStripSettings.cs
- FastEncoderWindow.cs
- SystemInfo.cs
- RemoveStoryboard.cs
- ObjectFullSpanRewriter.cs
- DoubleAnimationUsingPath.cs
- PngBitmapDecoder.cs
- Image.cs
- WMICapabilities.cs
- BinaryFormatter.cs
- BindingNavigator.cs
- safesecurityhelperavalon.cs
- NamespaceExpr.cs
- EntityDataSourceWrapperCollection.cs
- UInt32.cs
- TreeViewTemplateSelector.cs
- StrokeNodeOperations2.cs
- SchemaCollectionCompiler.cs
- SelectionProcessor.cs
- DelayedRegex.cs
- DataGridColumnHeadersPresenterAutomationPeer.cs
- WebPartVerbsEventArgs.cs
- StackBuilderSink.cs
- NumberFormatInfo.cs
- AsymmetricAlgorithm.cs
- KeyProperty.cs
- AttachedPropertyBrowsableWhenAttributePresentAttribute.cs
- SQLStringStorage.cs
- StrokeNodeEnumerator.cs
- ErrorTableItemStyle.cs
- VirtualStackFrame.cs
- HttpGetProtocolImporter.cs
- KnownTypeAttribute.cs
- MessageLoggingElement.cs
- Deserializer.cs
- WorkflowPrinting.cs
- __ConsoleStream.cs
- TextDecoration.cs
- ConditionCollection.cs
- StoreContentChangedEventArgs.cs
- ViewPort3D.cs
- DbException.cs
- DesignerTransaction.cs
- FindCriteria.cs
- ColumnWidthChangingEvent.cs
- LoginName.cs
- GPStream.cs
- KerberosSecurityTokenAuthenticator.cs
- DesignerVerbCollection.cs
- FtpWebResponse.cs
- StickyNoteAnnotations.cs
- SHA384Managed.cs
- ThicknessAnimation.cs
- Match.cs
- AsymmetricSignatureFormatter.cs
- InputEventArgs.cs
- ObjectTypeMapping.cs
- ThrowHelper.cs
- MDIWindowDialog.cs
- TraceUtils.cs
- SchemaImporterExtensionsSection.cs
- ExtentCqlBlock.cs
- Rotation3DKeyFrameCollection.cs
- ExpressionEvaluator.cs
- OperandQuery.cs
- RowVisual.cs
- QueryAsyncResult.cs
- XmlMembersMapping.cs
- WebContentFormatHelper.cs
- MultiAsyncResult.cs
- MemberAssignmentAnalysis.cs
- StylusDownEventArgs.cs
- StrokeCollectionDefaultValueFactory.cs
- QuadraticEase.cs
- NotifyCollectionChangedEventArgs.cs