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
- Message.cs
- TogglePatternIdentifiers.cs
- DbConnectionStringCommon.cs
- TitleStyle.cs
- ImageMetadata.cs
- XmlDocumentSchema.cs
- HashCodeCombiner.cs
- HostProtectionPermission.cs
- BuildManagerHost.cs
- DispatcherFrame.cs
- BindingList.cs
- safesecurityhelperavalon.cs
- LinkLabelLinkClickedEvent.cs
- UpdatePanelTriggerCollection.cs
- BeginEvent.cs
- DataGridViewCellStyleChangedEventArgs.cs
- SimpleTextLine.cs
- NameObjectCollectionBase.cs
- DataServiceHost.cs
- CanonicalizationDriver.cs
- UnsafeCollabNativeMethods.cs
- ClipboardData.cs
- XmlWellformedWriter.cs
- XmlTextReaderImplHelpers.cs
- CompilerGlobalScopeAttribute.cs
- CultureInfoConverter.cs
- ListViewDeletedEventArgs.cs
- BulletedList.cs
- SHA512.cs
- ServerValidateEventArgs.cs
- TypeListConverter.cs
- EntityObject.cs
- SmtpNegotiateAuthenticationModule.cs
- storepermission.cs
- TypeConverter.cs
- HttpCacheVaryByContentEncodings.cs
- RuntimeCompatibilityAttribute.cs
- RepeatInfo.cs
- PassportIdentity.cs
- BoundField.cs
- SectionRecord.cs
- CodeTypeReference.cs
- ResourceDefaultValueAttribute.cs
- DeviceContexts.cs
- SymLanguageType.cs
- ComPlusInstanceProvider.cs
- TypeSystemProvider.cs
- CatalogPartCollection.cs
- TypeResolvingOptions.cs
- PassportAuthentication.cs
- ContentPlaceHolderDesigner.cs
- VectorValueSerializer.cs
- GreaterThan.cs
- _ProxyChain.cs
- keycontainerpermission.cs
- XamlTypeMapper.cs
- AudioFormatConverter.cs
- ProjectedSlot.cs
- ButtonBaseAutomationPeer.cs
- LocalizabilityAttribute.cs
- Trace.cs
- MimeObjectFactory.cs
- RectangleConverter.cs
- IIS7UserPrincipal.cs
- ValueTypeFixupInfo.cs
- SystemIPGlobalProperties.cs
- AttributeUsageAttribute.cs
- TableRowCollection.cs
- StatusStrip.cs
- ChannelSinkStacks.cs
- AnnotationService.cs
- HwndTarget.cs
- EnvironmentPermission.cs
- MetafileHeaderWmf.cs
- RequestCacheManager.cs
- FormViewModeEventArgs.cs
- SmiMetaDataProperty.cs
- TransactionFlowProperty.cs
- DeclarationUpdate.cs
- tooltip.cs
- HelpEvent.cs
- listitem.cs
- Constraint.cs
- IntMinMaxAggregationOperator.cs
- HtmlMeta.cs
- Rect3DConverter.cs
- CodeMemberEvent.cs
- RC2CryptoServiceProvider.cs
- XPathMultyIterator.cs
- RecognizedPhrase.cs
- UIPermission.cs
- ThaiBuddhistCalendar.cs
- XPathSingletonIterator.cs
- Highlights.cs
- ThaiBuddhistCalendar.cs
- RijndaelCryptoServiceProvider.cs
- CodeAttributeArgumentCollection.cs
- basecomparevalidator.cs
- XMLUtil.cs
- SchemaElementLookUpTable.cs