Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Core / CSharp / 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. 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
- ChunkedMemoryStream.cs
- CurrentChangingEventManager.cs
- DynamicRenderer.cs
- BindingList.cs
- WindowsSolidBrush.cs
- AutomationProperty.cs
- ComplusTypeValidator.cs
- BinarySerializer.cs
- FontCollection.cs
- SqlUtils.cs
- FontWeightConverter.cs
- Selection.cs
- GradientStop.cs
- MailMessage.cs
- EntityDesignerUtils.cs
- ContentDisposition.cs
- StringDictionary.cs
- HotSpotCollection.cs
- OutputCacheModule.cs
- SdlChannelSink.cs
- StreamWriter.cs
- SafeNativeMethods.cs
- SpeechRecognitionEngine.cs
- DataRelationCollection.cs
- AppSecurityManager.cs
- IResourceProvider.cs
- XmlSchemaComplexContentRestriction.cs
- Semaphore.cs
- CollectionViewGroupInternal.cs
- HwndSource.cs
- KeyGestureConverter.cs
- AccessDataSourceView.cs
- CodeIdentifiers.cs
- SafeArrayTypeMismatchException.cs
- WebSysDescriptionAttribute.cs
- DataBoundLiteralControl.cs
- WSSecurityPolicy.cs
- Animatable.cs
- ListViewTableCell.cs
- CompilationUtil.cs
- Certificate.cs
- OleDbDataReader.cs
- SQLConvert.cs
- ButtonBaseAdapter.cs
- EventsTab.cs
- WebPartTransformerCollection.cs
- designeractionlistschangedeventargs.cs
- SequenceDesigner.xaml.cs
- HotSpotCollection.cs
- TimeStampChecker.cs
- EventListener.cs
- InitiatorServiceModelSecurityTokenRequirement.cs
- RawStylusSystemGestureInputReport.cs
- MethodBody.cs
- SqlClientMetaDataCollectionNames.cs
- TextElementEnumerator.cs
- ConstraintCollection.cs
- ObjectStateEntryBaseUpdatableDataRecord.cs
- XmlReflectionImporter.cs
- SystemIPAddressInformation.cs
- AdapterDictionary.cs
- HttpServerUtilityWrapper.cs
- RunInstallerAttribute.cs
- ProcessModelInfo.cs
- Accessible.cs
- connectionpool.cs
- DataGridViewSelectedRowCollection.cs
- JournalNavigationScope.cs
- AccessKeyManager.cs
- Fault.cs
- CryptoStream.cs
- EventRoute.cs
- EntityDataSourceWrapperCollection.cs
- NestPullup.cs
- CommonProperties.cs
- HashAlgorithm.cs
- XmlObjectSerializerReadContextComplexJson.cs
- ColumnBinding.cs
- FloaterParagraph.cs
- SemanticResultKey.cs
- RenameRuleObjectDialog.Designer.cs
- SymbolTable.cs
- NumericUpDownAcceleration.cs
- ResourceDictionaryCollection.cs
- ZipIOFileItemStream.cs
- SapiInterop.cs
- OrderedDictionary.cs
- ProofTokenCryptoHandle.cs
- DescendantBaseQuery.cs
- CodeTryCatchFinallyStatement.cs
- DateTimePicker.cs
- FileSecurity.cs
- ellipse.cs
- Registry.cs
- ConnectionManagementSection.cs
- BaseAddressPrefixFilterElement.cs
- MSAANativeProvider.cs
- TracePayload.cs
- FileDialogCustomPlace.cs
- BlurBitmapEffect.cs