Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / SourceChangedEventArgs.cs / 1305600 / 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
- SoapTypeAttribute.cs
- SqlGatherConsumedAliases.cs
- ListItem.cs
- CornerRadiusConverter.cs
- codemethodreferenceexpression.cs
- ClockController.cs
- ProgressChangedEventArgs.cs
- WsatStrings.cs
- DeploymentExceptionMapper.cs
- AttributeTableBuilder.cs
- LookupBindingPropertiesAttribute.cs
- SqlInternalConnection.cs
- Graph.cs
- TimeManager.cs
- OleDbFactory.cs
- ConcatQueryOperator.cs
- MenuItem.cs
- Collection.cs
- BindingContext.cs
- oledbconnectionstring.cs
- DefaultBindingPropertyAttribute.cs
- InternalsVisibleToAttribute.cs
- _Events.cs
- ChtmlTextWriter.cs
- XmlSchemaExporter.cs
- ApplicationActivator.cs
- ValueUnavailableException.cs
- SelectionPatternIdentifiers.cs
- ParagraphResult.cs
- ContextStack.cs
- PrePrepareMethodAttribute.cs
- ActiveDocumentEvent.cs
- GenericTypeParameterConverter.cs
- ImageSourceValueSerializer.cs
- DbDataReader.cs
- DomNameTable.cs
- ProtocolElement.cs
- SizeAnimationUsingKeyFrames.cs
- CompModSwitches.cs
- BinHexDecoder.cs
- ControlBindingsCollection.cs
- MbpInfo.cs
- TypeDependencyAttribute.cs
- OrderablePartitioner.cs
- PropertyConverter.cs
- UInt64.cs
- HyperLinkStyle.cs
- ExceptionHandlerDesigner.cs
- SuppressMessageAttribute.cs
- ActiveXMessageFormatter.cs
- DateTimeFormatInfo.cs
- XPathAxisIterator.cs
- SessionPageStateSection.cs
- NavigationPropertyEmitter.cs
- OleDbFactory.cs
- coordinatorscratchpad.cs
- RegexBoyerMoore.cs
- WebHeaderCollection.cs
- TextDecorationCollection.cs
- NavigationEventArgs.cs
- Token.cs
- Translator.cs
- TextContainer.cs
- PointAnimationUsingPath.cs
- GenericWebPart.cs
- ArcSegment.cs
- DuplicateWaitObjectException.cs
- CFStream.cs
- Identifier.cs
- ListViewTableRow.cs
- _Semaphore.cs
- WhitespaceSignificantCollectionAttribute.cs
- ConnectionPoolManager.cs
- GridViewDeleteEventArgs.cs
- TextDecoration.cs
- ExpandableObjectConverter.cs
- ListViewPagedDataSource.cs
- CodeAttributeArgument.cs
- XpsDocumentEvent.cs
- tooltip.cs
- InvalidCastException.cs
- LinqDataSourceHelper.cs
- TableStyle.cs
- DecoderFallback.cs
- LineBreak.cs
- Geometry.cs
- UnitControl.cs
- TypeListConverter.cs
- SwitchElementsCollection.cs
- Pool.cs
- ScriptControlManager.cs
- DataTableMapping.cs
- HtmlSelect.cs
- XmlLangPropertyAttribute.cs
- CryptoKeySecurity.cs
- BitHelper.cs
- RenderData.cs
- ConstraintCollection.cs
- CollectionCodeDomSerializer.cs
- GeneralTransformGroup.cs