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
- Literal.cs
- rsa.cs
- DBPropSet.cs
- Triplet.cs
- XmlSchemaValidator.cs
- TimeoutException.cs
- ToolStrip.cs
- CompilerInfo.cs
- ImmutableAssemblyCacheEntry.cs
- TextDecorationCollection.cs
- Crc32.cs
- AspProxy.cs
- Relationship.cs
- WebBrowserPermission.cs
- ErrorStyle.cs
- TextMarkerSource.cs
- SecurityUtils.cs
- SecurityTokenRequirement.cs
- SafeRightsManagementHandle.cs
- CalendarButtonAutomationPeer.cs
- Resources.Designer.cs
- UserCancellationException.cs
- WebPartManagerInternals.cs
- TypedElement.cs
- DbDataSourceEnumerator.cs
- CodeLabeledStatement.cs
- EventWaitHandle.cs
- PackagePart.cs
- WebPartConnectionsCancelEventArgs.cs
- PageHandlerFactory.cs
- LostFocusEventManager.cs
- ItemCheckEvent.cs
- SessionStateContainer.cs
- GeneralTransformGroup.cs
- QueryCacheManager.cs
- XmlLinkedNode.cs
- SingleConverter.cs
- SingleStorage.cs
- StringConcat.cs
- OdbcFactory.cs
- AppSettingsReader.cs
- XmlSchemaElement.cs
- NavigationService.cs
- DoubleAnimationBase.cs
- CheckBoxAutomationPeer.cs
- GridViewRowEventArgs.cs
- DataGridLinkButton.cs
- NamespaceInfo.cs
- WriteableBitmap.cs
- HttpHandlersSection.cs
- AnnotationObservableCollection.cs
- MetadataCache.cs
- MatrixValueSerializer.cs
- GridViewCommandEventArgs.cs
- PEFileReader.cs
- DataViewListener.cs
- XMLUtil.cs
- AssemblyBuilder.cs
- AnnotationResource.cs
- webbrowsersite.cs
- ByteStack.cs
- EmptyQuery.cs
- NotificationContext.cs
- RepeatEnumerable.cs
- DateTimeSerializationSection.cs
- DataTrigger.cs
- AuthorizationRule.cs
- ZipIOExtraFieldZip64Element.cs
- CaseInsensitiveOrdinalStringComparer.cs
- behaviorssection.cs
- UnionCqlBlock.cs
- EdmMember.cs
- WindowsTab.cs
- ToolStripPanel.cs
- NetworkInformationException.cs
- ClientSettings.cs
- XmlSchemaSimpleContentRestriction.cs
- Facet.cs
- XmlSchemaException.cs
- ReturnValue.cs
- DefaultTextStore.cs
- QuotaExceededException.cs
- ServiceHttpModule.cs
- NamedPermissionSet.cs
- FontStyleConverter.cs
- LockRenewalTask.cs
- StringResourceManager.cs
- MailDefinition.cs
- CompileLiteralTextParser.cs
- ActiveXHelper.cs
- GeometryHitTestResult.cs
- CapiNative.cs
- DateTimeUtil.cs
- UInt16Converter.cs
- PropertyEmitterBase.cs
- Int32CAMarshaler.cs
- SafeViewOfFileHandle.cs
- Path.cs
- FontDialog.cs
- DES.cs