Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Core / System / Windows / SourceChangedEventArgs.cs / 1 / SourceChangedEventArgs.cs
using System; using System.Security; using System.Security.Permissions; using MS.Internal; using MS.Internal.PresentationCore; // SecurityHelper using MS.Win32; namespace System.Windows { ////// Provides data for the SourceChanged event. /// public sealed class SourceChangedEventArgs : RoutedEventArgs { ////// Initializes a new instance of the SourceChangedEventArgs class. /// /// /// The old source that this handler is being notified about. /// /// /// The new source that this handler is being notified about. /// ////// Critical:This handles critical in the form of PresentationSource but there are demands on the /// data /// PublicOK: As this code does not expose the data. /// [SecurityCritical] public SourceChangedEventArgs(PresentationSource oldSource, PresentationSource newSource) :this(oldSource, newSource, null, null) { } ////// Initializes a new instance of the SourceChangedEventArgs class. /// /// /// The old source that this handler is being notified about. /// /// /// The new source that this handler is being notified about. /// /// /// The element whose parent changed causing the source to change. /// /// /// The old parent of the element whose parent changed causing the /// source to change. /// ////// Critical:This handles critical data in the form of PresentationSource but there are demands on the /// critical data. /// PublicOK:As this code does not expose any critical data. /// [SecurityCritical] public SourceChangedEventArgs(PresentationSource oldSource, PresentationSource newSource, IInputElement element, IInputElement oldParent) { _oldSource = new SecurityCriticalData(oldSource); _newSource = new SecurityCriticalData (newSource); _element = element; _oldParent = oldParent; } /// /// The old source that this handler is being notified about. /// ////// Callers must have UIPermission(UIPermissionWindow.AllWindows) to call this API. /// ////// Critical: This handles critical data in the form of PresentationSource but there are demands on the /// critical data /// PublicOK: There exists a demand /// public PresentationSource OldSource { [SecurityCritical] get { SecurityHelper.DemandUIWindowPermission(); return _oldSource.Value; } } ////// The new source that this handler is being notified about. /// ////// Callers must have UIPermission(UIPermissionWindow.AllWindows) to call this API. /// ////// Critical: This handles critical data in the form of PresentationSource but there are demands on the /// critical data /// PublicOK: There exists a demand /// public PresentationSource NewSource { [SecurityCritical] get { SecurityHelper.DemandUIWindowPermission(); return _newSource.Value; } } ////// The element whose parent changed causing the source to change. /// public IInputElement Element { get {return _element;} } ////// The old parent of the element whose parent changed causing the /// source to change. /// public IInputElement OldParent { get {return _oldParent;} } ////// The mechanism used to call the type-specific handler on the /// target. /// /// /// The generic handler to call in a type-specific way. /// /// /// The target to call the handler on. /// protected override void InvokeEventHandler(Delegate genericHandler, object genericTarget) { SourceChangedEventHandler handler = (SourceChangedEventHandler) genericHandler; handler(genericTarget, this); } ////// Critical: This holds reference to a presentation source not safe to give out /// private SecurityCriticalData_oldSource; /// /// Critical: This holds reference to a presentation source not safe to give out /// private SecurityCriticalData_newSource; private IInputElement _element; private IInputElement _oldParent; } } // 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
- RequestCacheEntry.cs
- ImplicitInputBrush.cs
- CardSpaceException.cs
- WebServiceBindingAttribute.cs
- CreateWorkflowOwnerCommand.cs
- MostlySingletonList.cs
- CoreSwitches.cs
- DecoderBestFitFallback.cs
- NamespaceEmitter.cs
- AnnotationResourceCollection.cs
- DataKeyCollection.cs
- Material.cs
- DoubleAnimationClockResource.cs
- SystemIPAddressInformation.cs
- ValidationSummary.cs
- InvariantComparer.cs
- BitmapSizeOptions.cs
- DataGridViewColumnConverter.cs
- TraceUtils.cs
- Empty.cs
- SymbolMethod.cs
- HtmlUtf8RawTextWriter.cs
- ResumeStoryboard.cs
- Lease.cs
- ExpressionLink.cs
- XPathDocumentBuilder.cs
- EntityContainerRelationshipSet.cs
- TypeUtil.cs
- IIS7UserPrincipal.cs
- TableDesigner.cs
- Atom10FormatterFactory.cs
- UrlMappingsSection.cs
- ProfileProvider.cs
- ModelItemDictionary.cs
- EastAsianLunisolarCalendar.cs
- SrgsRuleRef.cs
- InstalledFontCollection.cs
- CodeTypeReferenceCollection.cs
- TextDecorationUnitValidation.cs
- ServicePoint.cs
- TextPattern.cs
- wgx_commands.cs
- UIElementIsland.cs
- Transform3DCollection.cs
- EntityDescriptor.cs
- MarkupObject.cs
- ReceiveMessageAndVerifySecurityAsyncResultBase.cs
- PrePostDescendentsWalker.cs
- CategoryAttribute.cs
- IgnoreFlushAndCloseStream.cs
- XsdDateTime.cs
- TcpServerChannel.cs
- GPRECT.cs
- MimeObjectFactory.cs
- InputReferenceExpression.cs
- WebConfigurationManager.cs
- MarkupCompiler.cs
- DataGridViewTopLeftHeaderCell.cs
- PassportAuthenticationEventArgs.cs
- safemediahandle.cs
- RecordManager.cs
- CancelRequestedRecord.cs
- AnimationClock.cs
- ValidateNames.cs
- XPathNavigatorReader.cs
- DataGridCellClipboardEventArgs.cs
- regiisutil.cs
- SoapIgnoreAttribute.cs
- DataListItemCollection.cs
- EditorBrowsableAttribute.cs
- CursorConverter.cs
- DbConnectionInternal.cs
- TabControlCancelEvent.cs
- Vector3DAnimationUsingKeyFrames.cs
- SqlCommand.cs
- WorkflowInstanceProvider.cs
- _SslStream.cs
- DataTable.cs
- XMLSchema.cs
- CryptoApi.cs
- AddingNewEventArgs.cs
- MetabaseServerConfig.cs
- PhonemeEventArgs.cs
- TimeSpanOrInfiniteValidator.cs
- ScrollChrome.cs
- ContentValidator.cs
- FormatSelectingMessageInspector.cs
- ScriptResourceMapping.cs
- Stream.cs
- PeekCompletedEventArgs.cs
- SmtpReplyReaderFactory.cs
- SqlDataReader.cs
- SqlProviderManifest.cs
- ColumnReorderedEventArgs.cs
- TypeReference.cs
- FontFamily.cs
- TextMarkerSource.cs
- Button.cs
- ByteStack.cs
- EntityViewGenerationAttribute.cs