Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- EventPropertyMap.cs
- Rect3D.cs
- XmlSchemaAttributeGroup.cs
- thaishape.cs
- FrugalList.cs
- WebPartConnectionCollection.cs
- Transform.cs
- BuilderPropertyEntry.cs
- SqlReferenceCollection.cs
- ApplicationFileParser.cs
- HtmlSelect.cs
- ColorConvertedBitmap.cs
- QuaternionAnimationUsingKeyFrames.cs
- TextFormatter.cs
- SecurityTokenSpecification.cs
- GeometryDrawing.cs
- HierarchicalDataSourceDesigner.cs
- DataGridCellsPanel.cs
- AdCreatedEventArgs.cs
- TraversalRequest.cs
- CodeCommentStatement.cs
- WindowsSysHeader.cs
- MappingModelBuildProvider.cs
- Helper.cs
- SerializationInfo.cs
- Rfc2898DeriveBytes.cs
- IPipelineRuntime.cs
- FactoryRecord.cs
- LateBoundBitmapDecoder.cs
- ObjectQuery.cs
- RuleAttributes.cs
- UserMapPath.cs
- LogicalExpr.cs
- PcmConverter.cs
- CallbackHandler.cs
- ProxyAttribute.cs
- _ProxyChain.cs
- __Filters.cs
- HtmlInputReset.cs
- X509Chain.cs
- RtType.cs
- CustomAssemblyResolver.cs
- RootDesignerSerializerAttribute.cs
- TableLayoutCellPaintEventArgs.cs
- ToolBarOverflowPanel.cs
- CroppedBitmap.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- ValidatingPropertiesEventArgs.cs
- propertytag.cs
- DateTimeFormatInfo.cs
- TagNameToTypeMapper.cs
- LinkTarget.cs
- FlowDocumentFormatter.cs
- StateElement.cs
- ApplicationServiceHelper.cs
- OdbcCommandBuilder.cs
- contentDescriptor.cs
- NullReferenceException.cs
- XmlUtil.cs
- IIS7WorkerRequest.cs
- GridEntryCollection.cs
- SystemDiagnosticsSection.cs
- XmlSchemaChoice.cs
- StringValidatorAttribute.cs
- LocalizeDesigner.cs
- DesignerToolboxInfo.cs
- ExpressionBinding.cs
- BindingFormattingDialog.cs
- RoleService.cs
- OdbcConnectionPoolProviderInfo.cs
- LayoutDump.cs
- OleDbConnectionFactory.cs
- FormsAuthenticationUser.cs
- TraceSwitch.cs
- AlignmentYValidation.cs
- __ConsoleStream.cs
- ContextQuery.cs
- MenuItemStyleCollectionEditor.cs
- AppSettingsExpressionBuilder.cs
- SimpleLine.cs
- DataGridCellItemAutomationPeer.cs
- DesignBindingValueUIHandler.cs
- ForceCopyBuildProvider.cs
- ElementsClipboardData.cs
- ApplicationSecurityInfo.cs
- FormClosingEvent.cs
- WindowCollection.cs
- Errors.cs
- SiteMapNodeCollection.cs
- RuleRef.cs
- BasicViewGenerator.cs
- Drawing.cs
- XmlUnspecifiedAttribute.cs
- Oci.cs
- SqlExpander.cs
- XsltException.cs
- LineServicesCallbacks.cs
- ExpressionPrefixAttribute.cs
- WindowsPrincipal.cs
- TdsEnums.cs