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
- EnumDataContract.cs
- BindingWorker.cs
- Typeface.cs
- DocumentGridPage.cs
- HandlerBase.cs
- CornerRadius.cs
- EnumBuilder.cs
- CompressedStack.cs
- JsonDeserializer.cs
- KeyGestureConverter.cs
- httpserverutility.cs
- ExpressionDumper.cs
- PageDeviceFont.cs
- BCLDebug.cs
- XmlKeywords.cs
- CompModSwitches.cs
- WSMessageEncoding.cs
- ProviderCollection.cs
- DynamicDataResources.Designer.cs
- FrameworkElementFactory.cs
- HttpException.cs
- TopClause.cs
- ApplicationServiceHelper.cs
- ReadOnlyActivityGlyph.cs
- FormsAuthenticationCredentials.cs
- _LocalDataStore.cs
- CompiledQuery.cs
- WindowsMenu.cs
- OutputCacheSettingsSection.cs
- AsyncMethodInvoker.cs
- CryptoApi.cs
- CustomExpression.cs
- MenuCommand.cs
- StrokeCollectionDefaultValueFactory.cs
- Message.cs
- NameObjectCollectionBase.cs
- PreProcessInputEventArgs.cs
- XhtmlBasicListAdapter.cs
- ArgumentException.cs
- ZipIOEndOfCentralDirectoryBlock.cs
- FrugalMap.cs
- DragDrop.cs
- AbsoluteQuery.cs
- ToolTip.cs
- ComboBox.cs
- ScrollEventArgs.cs
- AlphaSortedEnumConverter.cs
- HtmlElementErrorEventArgs.cs
- DataGrid.cs
- GraphicsContext.cs
- Animatable.cs
- WebDisplayNameAttribute.cs
- returneventsaver.cs
- CodeExpressionCollection.cs
- GraphicsContainer.cs
- XmlElement.cs
- EntitySqlQueryCacheKey.cs
- XamlFigureLengthSerializer.cs
- VirtualizedContainerService.cs
- WebZone.cs
- BinaryUtilClasses.cs
- PointLightBase.cs
- MenuAutomationPeer.cs
- regiisutil.cs
- BufferedStream.cs
- CleanUpVirtualizedItemEventArgs.cs
- DynamicDataResources.Designer.cs
- dbdatarecord.cs
- DetailsViewPageEventArgs.cs
- EndpointInfo.cs
- NameValueFileSectionHandler.cs
- SQLMembershipProvider.cs
- AppDomainAttributes.cs
- MasterPageCodeDomTreeGenerator.cs
- CalculatedColumn.cs
- XPathAncestorQuery.cs
- PatternMatcher.cs
- InfoCardProofToken.cs
- XmlWellformedWriter.cs
- UInt32Storage.cs
- HtmlInputRadioButton.cs
- ErrorHandler.cs
- Helpers.cs
- LocalizationParserHooks.cs
- TableParaClient.cs
- SerialPort.cs
- VScrollBar.cs
- ColorBlend.cs
- ShutDownListener.cs
- SoapServerMethod.cs
- ContextMenu.cs
- SmtpNetworkElement.cs
- Size.cs
- Control.cs
- ProtocolsConfiguration.cs
- OneWayElement.cs
- DataGridViewRowCancelEventArgs.cs
- TimersDescriptionAttribute.cs
- AnnotationMap.cs
- XsdBuilder.cs