Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / 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 : [....] - 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
- DataGridViewSortCompareEventArgs.cs
- XmlSchemaImporter.cs
- SubpageParagraph.cs
- ExpressionBindings.cs
- ExtensionSimplifierMarkupObject.cs
- SqlBulkCopy.cs
- TemplatePartAttribute.cs
- XmlResolver.cs
- ExpandableObjectConverter.cs
- EntityDataSourceStatementEditorForm.cs
- IUnknownConstantAttribute.cs
- IHttpResponseInternal.cs
- Pkcs9Attribute.cs
- FileDetails.cs
- InkCanvas.cs
- ParenExpr.cs
- SafeLibraryHandle.cs
- DocumentApplicationJournalEntry.cs
- CatalogZone.cs
- MatrixTransform3D.cs
- EmptyReadOnlyDictionaryInternal.cs
- MemberDescriptor.cs
- FieldNameLookup.cs
- HttpApplicationFactory.cs
- RequestCacheValidator.cs
- CompositeFontParser.cs
- MergePropertyDescriptor.cs
- GACMembershipCondition.cs
- ChoiceConverter.cs
- TreeViewEvent.cs
- XPathDocumentIterator.cs
- OleDbStruct.cs
- HTTPRemotingHandler.cs
- CollectionsUtil.cs
- AmbientLight.cs
- ColorAnimation.cs
- TrustLevelCollection.cs
- GeometryCombineModeValidation.cs
- SecurityChannelFactory.cs
- XPathSelectionIterator.cs
- OrderPreservingSpoolingTask.cs
- BrowserCapabilitiesCompiler.cs
- XmlTextReaderImpl.cs
- _NegoState.cs
- SEHException.cs
- Tokenizer.cs
- IDispatchConstantAttribute.cs
- SizeChangedEventArgs.cs
- SqlBulkCopyColumnMapping.cs
- Slider.cs
- AttachInfo.cs
- ScrollProviderWrapper.cs
- StrongNameMembershipCondition.cs
- SyndicationFeed.cs
- XmlElementAttribute.cs
- CardSpacePolicyElement.cs
- AppModelKnownContentFactory.cs
- ApplicationSecurityInfo.cs
- TypeConverterHelper.cs
- DiscoveryCallbackBehavior.cs
- ToolTip.cs
- ChildrenQuery.cs
- CapabilitiesSection.cs
- NavigationPropertyEmitter.cs
- LeaseManager.cs
- SoundPlayerAction.cs
- URL.cs
- TargetException.cs
- ParserExtension.cs
- _WinHttpWebProxyDataBuilder.cs
- RegisteredDisposeScript.cs
- WebHeaderCollection.cs
- FontWeight.cs
- MruCache.cs
- AsyncOperationManager.cs
- TailCallAnalyzer.cs
- Int64Converter.cs
- StringToken.cs
- ReadWriteObjectLock.cs
- Int64Converter.cs
- ReadOnlyAttribute.cs
- Code.cs
- SqlRetyper.cs
- AnnotationResourceChangedEventArgs.cs
- AspProxy.cs
- Solver.cs
- FilterInvalidBodyAccessException.cs
- AbandonedMutexException.cs
- ProcessModuleCollection.cs
- ExtensionQuery.cs
- Base64Decoder.cs
- ZoomingMessageFilter.cs
- TextBox.cs
- PowerStatus.cs
- IndexObject.cs
- Timer.cs
- WindowsFormsLinkLabel.cs
- StrokeCollection.cs
- DataControlPagerLinkButton.cs
- ClaimTypeElement.cs