Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Base / System / Windows / Threading / DispatcherExceptionFilterEventArgs.cs / 1305600 / DispatcherExceptionFilterEventArgs.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: Arguments for the ExceptionFilter event. The event is raised // when a dispatcher exception has occured. This event is raised // before the callstack is unwound. // // History: // 07/22/2003 : KenLai - Created // //--------------------------------------------------------------------------- using System.Diagnostics; using System; namespace System.Windows.Threading { ////// Arguments for the ExceptionFilter event. The event is raised when /// a dispatcher exception has occured. /// ////// This event is raised before the callstack is unwound. /// public sealed class DispatcherUnhandledExceptionFilterEventArgs : DispatcherEventArgs { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- // Initialize a new event argument. internal DispatcherUnhandledExceptionFilterEventArgs(Dispatcher dispatcher) : base(dispatcher) { } //------------------------------------------------------ // // Public Properties // //----------------------------------------------------- ////// The exception that was raised on a thread operating within /// the dispatcher. /// public Exception Exception { get { return _exception; } } ////// Whether or not the exception should be caught and the exception /// event handlers called. /// ////// A filter handler can set this property to false to request that /// the exception not be caught, to avoid the callstack getting /// unwound up to the Dispatcher. /// /// A previous handler in the event multicast might have already set this /// property to false, signalling that the exception will not be caught. /// We let the "don't catch" behavior override all others because /// it most likely means a debugging scenario. /// public bool RequestCatch { get { return _requestCatch; } set { // Only allow to be set false. if (value == false) { _requestCatch = value; } } } //------------------------------------------------------ // // Internal Methods // //------------------------------------------------------ ////// Initialize the preallocated args class for use. /// ////// This method MUST NOT FAIL because it is called from an exception /// handler: do not do any heavy lifting or allocate more memory. /// This initialization step is separated from the constructor /// precisely because we wanted to preallocate the memory and avoid /// hitting a secondary exception in the out-of-memory case. /// /// /// The exception that was raised while executing code via the /// dispatcher. /// /// /// Whether or not the exception should be caught and the /// exception handlers called. /// internal void Initialize(Exception exception, bool requestCatch) { Debug.Assert(exception != null); _exception = exception; _requestCatch = requestCatch; } //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ private Exception _exception; private bool _requestCatch; } ////// Delegate for the events that convey the state of the UiConext /// in response to various actions that involve items. /// public delegate void DispatcherUnhandledExceptionFilterEventHandler(object sender, DispatcherUnhandledExceptionFilterEventArgs e); } // 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
- Activity.cs
- DragEventArgs.cs
- StateRuntime.cs
- ValidatorCompatibilityHelper.cs
- StdValidatorsAndConverters.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- AppDomainEvidenceFactory.cs
- CallContext.cs
- ValueTable.cs
- ConditionalAttribute.cs
- PageBorderless.cs
- Debug.cs
- CngProperty.cs
- QueryStringParameter.cs
- PointConverter.cs
- GroupItemAutomationPeer.cs
- XPathNodeInfoAtom.cs
- TextTreeFixupNode.cs
- ImmutableAssemblyCacheEntry.cs
- WorkflowInlining.cs
- WebBrowserHelper.cs
- FixedStringLookup.cs
- RestClientProxyHandler.cs
- TimeZone.cs
- MenuEventArgs.cs
- CodeGeneratorOptions.cs
- XmlAttributeAttribute.cs
- TextTabProperties.cs
- TextBoxRenderer.cs
- basevalidator.cs
- HandlerFactoryWrapper.cs
- SystemGatewayIPAddressInformation.cs
- OrthographicCamera.cs
- DbConvert.cs
- BooleanFunctions.cs
- Asn1IntegerConverter.cs
- ScrollableControl.cs
- ProjectedSlot.cs
- NativeMethods.cs
- ManagedIStream.cs
- baseshape.cs
- BCryptNative.cs
- FrugalList.cs
- HTTPNotFoundHandler.cs
- DomNameTable.cs
- SimpleHandlerBuildProvider.cs
- SortAction.cs
- GraphicsContainer.cs
- MembershipUser.cs
- DataGridViewCheckBoxCell.cs
- HostUtils.cs
- RealProxy.cs
- ToolStripItemImageRenderEventArgs.cs
- SystemIPv6InterfaceProperties.cs
- PersianCalendar.cs
- ColorContext.cs
- DockPattern.cs
- DataGridViewRowErrorTextNeededEventArgs.cs
- QuaternionRotation3D.cs
- MethodCallTranslator.cs
- ExpressionWriter.cs
- SmiEventStream.cs
- OdbcConnection.cs
- BitmapMetadata.cs
- UserControlDesigner.cs
- ActiveDocumentEvent.cs
- Vector.cs
- RC2.cs
- ListSortDescriptionCollection.cs
- DateRangeEvent.cs
- TextureBrush.cs
- ConfigurationProperty.cs
- NamespaceImport.cs
- OptimizedTemplateContent.cs
- EncoderReplacementFallback.cs
- PowerEase.cs
- EndOfStreamException.cs
- KeyEventArgs.cs
- SpeechEvent.cs
- ResourceExpression.cs
- VoiceChangeEventArgs.cs
- SQLMembershipProvider.cs
- COM2PropertyDescriptor.cs
- PtsHelper.cs
- HTTPNotFoundHandler.cs
- HttpServerUtilityWrapper.cs
- PkcsUtils.cs
- MetaTableHelper.cs
- EntityWithKeyStrategy.cs
- XmlEventCache.cs
- Rotation3DAnimation.cs
- HandledMouseEvent.cs
- TextSelectionHelper.cs
- RSAProtectedConfigurationProvider.cs
- EventLogger.cs
- RuntimeWrappedException.cs
- TreeNode.cs
- MulticastDelegate.cs
- BaseTemplateParser.cs
- AssemblyAttributesGoHere.cs