Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / System / Windows / Interop / WindowInteropHelper.cs / 1 / WindowInteropHelper.cs
//---------------------------------------------------------------------------- // // File: WindowInteropHelper.cs // // Description: Implements Avalon WindowInteropHelper classes, which helps // interop b/w legacy and Avalon Window. // // Created: 05/06/03 // // Copyright (C) 2001 by Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Windows; using System.Windows.Interop; using System.Security; using System.Security.Permissions; using System.Diagnostics; using MS.Internal; using MS.Internal.PresentationFramework; // SecurityHelper using MS.Win32; namespace System.Windows.Interop { #region class WindowInteropHelper ////// Implements Avalon WindowInteropHelper classes, which helps /// interop b/w legacy and Avalon Window. /// public sealed class WindowInteropHelper { //--------------------------------------------------- // // Constructors // //--------------------------------------------------- #region Constructors ////// /// /// public WindowInteropHelper(Window window) { if (window == null) throw new ArgumentNullException("window"); _window = window; } #endregion Constructors //---------------------------------------------------- // // Public Properties // //--------------------------------------------------- #region Public Properties ////// Get the Handle of the window /// ////// Callers must have UIPermission(UIPermissionWindow.AllWindows) to call this API. /// ////// Critical: Exposes a handle /// PublicOK: There is a demand , this API not available in internet zone /// public IntPtr Handle { [SecurityCritical] get { SecurityHelper.DemandUIWindowPermission(); return CriticalHandle; } } ////// Critical: Exposes a handle /// internal IntPtr CriticalHandle { [SecurityCritical] get { Invariant.Assert(_window != null, "Cannot be null since we verify in the constructor"); return _window.CriticalHandle; } } ////// Get/Set the Owner handle of the window /// ////// Callers must have UIPermission(UIPermissionWindow.AllWindows) to call this API. /// ////// Critical: Exposes a handle /// PublicOK: There is a demand , this API not available in internet zone /// public IntPtr Owner { [SecurityCritical] get { SecurityHelper.DemandUIWindowPermission(); Debug.Assert(_window != null, "Cannot be null since we verify in the constructor"); return _window.OwnerHandle; } [SecurityCritical] set { SecurityHelper.DemandUIWindowPermission(); Debug.Assert(_window != null, "Cannot be null since we verify in the constructor"); // error checking done in Window _window.OwnerHandle = value; } } #endregion Public Properties //---------------------------------------------- // // Private Fields // //---------------------------------------------- #region Private Fields private Window _window; #endregion Private Members } #endregion class WindowInteropHelper } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // File: WindowInteropHelper.cs // // Description: Implements Avalon WindowInteropHelper classes, which helps // interop b/w legacy and Avalon Window. // // Created: 05/06/03 // // Copyright (C) 2001 by Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Windows; using System.Windows.Interop; using System.Security; using System.Security.Permissions; using System.Diagnostics; using MS.Internal; using MS.Internal.PresentationFramework; // SecurityHelper using MS.Win32; namespace System.Windows.Interop { #region class WindowInteropHelper ////// Implements Avalon WindowInteropHelper classes, which helps /// interop b/w legacy and Avalon Window. /// public sealed class WindowInteropHelper { //--------------------------------------------------- // // Constructors // //--------------------------------------------------- #region Constructors ////// /// /// public WindowInteropHelper(Window window) { if (window == null) throw new ArgumentNullException("window"); _window = window; } #endregion Constructors //---------------------------------------------------- // // Public Properties // //--------------------------------------------------- #region Public Properties ////// Get the Handle of the window /// ////// Callers must have UIPermission(UIPermissionWindow.AllWindows) to call this API. /// ////// Critical: Exposes a handle /// PublicOK: There is a demand , this API not available in internet zone /// public IntPtr Handle { [SecurityCritical] get { SecurityHelper.DemandUIWindowPermission(); return CriticalHandle; } } ////// Critical: Exposes a handle /// internal IntPtr CriticalHandle { [SecurityCritical] get { Invariant.Assert(_window != null, "Cannot be null since we verify in the constructor"); return _window.CriticalHandle; } } ////// Get/Set the Owner handle of the window /// ////// Callers must have UIPermission(UIPermissionWindow.AllWindows) to call this API. /// ////// Critical: Exposes a handle /// PublicOK: There is a demand , this API not available in internet zone /// public IntPtr Owner { [SecurityCritical] get { SecurityHelper.DemandUIWindowPermission(); Debug.Assert(_window != null, "Cannot be null since we verify in the constructor"); return _window.OwnerHandle; } [SecurityCritical] set { SecurityHelper.DemandUIWindowPermission(); Debug.Assert(_window != null, "Cannot be null since we verify in the constructor"); // error checking done in Window _window.OwnerHandle = value; } } #endregion Public Properties //---------------------------------------------- // // Private Fields // //---------------------------------------------- #region Private Fields private Window _window; #endregion Private Members } #endregion class WindowInteropHelper } // 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
- AtomContentProperty.cs
- PagesChangedEventArgs.cs
- HttpResponse.cs
- NonDualMessageSecurityOverHttpElement.cs
- QueryAccessibilityHelpEvent.cs
- HostingEnvironmentException.cs
- XmlValueConverter.cs
- DynamicPropertyHolder.cs
- StylusPoint.cs
- TreeViewAutomationPeer.cs
- FieldValue.cs
- FixedDocumentSequencePaginator.cs
- StrongNameIdentityPermission.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- XmlLinkedNode.cs
- AlternationConverter.cs
- SerializationBinder.cs
- PerformanceCounterManager.cs
- SystemNetHelpers.cs
- WebResourceAttribute.cs
- FontStyleConverter.cs
- HMACSHA512.cs
- initElementDictionary.cs
- SortQuery.cs
- RemotingHelper.cs
- _NegoStream.cs
- Button.cs
- RelatedView.cs
- AcceleratedTokenProviderState.cs
- BooleanProjectedSlot.cs
- Soap.cs
- PathGeometry.cs
- SelectionPattern.cs
- DataGridCell.cs
- Resources.Designer.cs
- XmlBinaryReaderSession.cs
- StaticTextPointer.cs
- NativeWindow.cs
- HwndTarget.cs
- TypeDescriptor.cs
- ControlCodeDomSerializer.cs
- CodeStatement.cs
- localization.cs
- AsymmetricKeyExchangeFormatter.cs
- PeerServiceMessageContracts.cs
- ContainerTracking.cs
- HeaderUtility.cs
- ServiceReference.cs
- CharacterMetricsDictionary.cs
- CorePropertiesFilter.cs
- DigitShape.cs
- SqlDataSourceAdvancedOptionsForm.cs
- UIElement3DAutomationPeer.cs
- PeerApplication.cs
- FrameworkElement.cs
- InstanceHandleReference.cs
- MessageDecoder.cs
- complextypematerializer.cs
- TraceListeners.cs
- HwndAppCommandInputProvider.cs
- HealthMonitoringSection.cs
- UITypeEditor.cs
- Viewport3DVisual.cs
- StrokeRenderer.cs
- loginstatus.cs
- DesignerProperties.cs
- ImageListUtils.cs
- NumericUpDownAcceleration.cs
- COAUTHINFO.cs
- SettingsPropertyCollection.cs
- ExecutionContext.cs
- SQLBinary.cs
- Rijndael.cs
- RawStylusInputCustomDataList.cs
- XamlDebuggerXmlReader.cs
- ColorConverter.cs
- ParsedAttributeCollection.cs
- IpcManager.cs
- EventLogPermission.cs
- CollectionType.cs
- Executor.cs
- FileUpload.cs
- EntityClientCacheKey.cs
- GlobalProxySelection.cs
- ElementUtil.cs
- MailWebEventProvider.cs
- PrimitiveDataContract.cs
- WindowsStatic.cs
- FrameAutomationPeer.cs
- DataBindEngine.cs
- ResolveNameEventArgs.cs
- RootAction.cs
- MetadataImporter.cs
- JsonClassDataContract.cs
- SAPICategories.cs
- WindowsStreamSecurityElement.cs
- XmlMemberMapping.cs
- QueueAccessMode.cs
- StateMachineDesignerPaint.cs
- mediapermission.cs