Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Base / System / Windows / Threading / DispatcherExceptionFilterEventArgs.cs / 1 / 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. //---------------------------------------------------------------------------- // //// 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
- parserscommon.cs
- AddressHeaderCollection.cs
- EntityDataSourceDataSelection.cs
- SchemaElementDecl.cs
- CodeCompiler.cs
- PageHandlerFactory.cs
- DrawingImage.cs
- InlinedLocationReference.cs
- ToolStripScrollButton.cs
- XamlInterfaces.cs
- TemplatedMailWebEventProvider.cs
- RsaSecurityKey.cs
- EntityStoreSchemaGenerator.cs
- FormViewCommandEventArgs.cs
- Type.cs
- DriveInfo.cs
- EntityClientCacheKey.cs
- SafeRegistryKey.cs
- WriteLine.cs
- DetailsViewRowCollection.cs
- AmbientLight.cs
- IgnoreSectionHandler.cs
- MdiWindowListStrip.cs
- SafeSecurityHelper.cs
- SecurityPermission.cs
- messageonlyhwndwrapper.cs
- CommonXSendMessage.cs
- ContentTypeSettingClientMessageFormatter.cs
- CodeTypeParameter.cs
- AddInAttribute.cs
- TextBoxDesigner.cs
- UInt64Converter.cs
- ImageDrawing.cs
- StrokeDescriptor.cs
- DataGridViewSelectedRowCollection.cs
- AnimationClock.cs
- ObjectHandle.cs
- PointCollectionValueSerializer.cs
- CodeAttributeDeclarationCollection.cs
- MarshalDirectiveException.cs
- xmlglyphRunInfo.cs
- CngUIPolicy.cs
- PerformanceCounter.cs
- PropertyConverter.cs
- FixedTextBuilder.cs
- RegisteredScript.cs
- SmuggledIUnknown.cs
- Quaternion.cs
- SafeRightsManagementQueryHandle.cs
- ListViewSortEventArgs.cs
- Monitor.cs
- StateMachineHelpers.cs
- HttpModuleActionCollection.cs
- Condition.cs
- NameNode.cs
- BitmapVisualManager.cs
- WorkflowApplicationCompletedException.cs
- CompositeScriptReference.cs
- XmlNodeChangedEventManager.cs
- DataPagerField.cs
- ContainerParagraph.cs
- LinearQuaternionKeyFrame.cs
- DbProviderFactory.cs
- BaseTemplateCodeDomTreeGenerator.cs
- Documentation.cs
- NamedObject.cs
- ComplusEndpointConfigContainer.cs
- _NestedMultipleAsyncResult.cs
- NodeFunctions.cs
- SamlAssertion.cs
- RepeaterItem.cs
- TableLayout.cs
- _StreamFramer.cs
- AsyncPostBackErrorEventArgs.cs
- Stack.cs
- NullEntityWrapper.cs
- DbDataSourceEnumerator.cs
- WhitespaceSignificantCollectionAttribute.cs
- GroupBoxRenderer.cs
- ViewBox.cs
- InfiniteIntConverter.cs
- DateTimeFormat.cs
- VectorAnimation.cs
- ObjectPersistData.cs
- WindowsClaimSet.cs
- DeferrableContent.cs
- SqlRowUpdatedEvent.cs
- XmlSchemaSimpleContentRestriction.cs
- ZoneLinkButton.cs
- ToolStripProgressBar.cs
- EntityTemplateFactory.cs
- ColorConvertedBitmapExtension.cs
- FileStream.cs
- ObjectListItem.cs
- Literal.cs
- IImplicitResourceProvider.cs
- SpecialFolderEnumConverter.cs
- WhitespaceRule.cs
- UseLicense.cs
- DiscoveryReferences.cs