Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- MailMessageEventArgs.cs
- Block.cs
- SQLDouble.cs
- StateInitializationDesigner.cs
- DefaultMemberAttribute.cs
- HttpHandlerAction.cs
- DefaultWorkflowLoaderService.cs
- Crc32.cs
- StyleXamlParser.cs
- ExtendedProtectionPolicyTypeConverter.cs
- MatrixAnimationBase.cs
- ClientSettings.cs
- DataGridAddNewRow.cs
- LineProperties.cs
- ContextStack.cs
- ProgressBarAutomationPeer.cs
- PerfService.cs
- NegotiateStream.cs
- OneOfElement.cs
- MemberCollection.cs
- FloatUtil.cs
- ArgumentsParser.cs
- PrimitiveXmlSerializers.cs
- OrderToken.cs
- TableCellAutomationPeer.cs
- Configuration.cs
- TreeNodeBinding.cs
- ViewCellSlot.cs
- StringSource.cs
- XamlClipboardData.cs
- SID.cs
- ScriptControlDescriptor.cs
- IBuiltInEvidence.cs
- DependencyPropertyDescriptor.cs
- StringAnimationBase.cs
- DataControlLinkButton.cs
- ProfileSection.cs
- InputBindingCollection.cs
- EdmProviderManifest.cs
- PointUtil.cs
- TableLayoutColumnStyleCollection.cs
- SqlConnectionStringBuilder.cs
- DBDataPermission.cs
- XmlAutoDetectWriter.cs
- CodeDomSerializerBase.cs
- TimeSpanValidator.cs
- DbParameterCollectionHelper.cs
- Hashtable.cs
- KoreanCalendar.cs
- Compensate.cs
- DataSourceCacheDurationConverter.cs
- EventWaitHandleSecurity.cs
- CachedFontFamily.cs
- TextSpan.cs
- PairComparer.cs
- SiteMapPath.cs
- MethodBody.cs
- FrameworkElementFactory.cs
- ProgressBarHighlightConverter.cs
- SequenceNumber.cs
- SmtpDigestAuthenticationModule.cs
- SimpleFieldTemplateUserControl.cs
- SR.Designer.cs
- ShutDownListener.cs
- HandoffBehavior.cs
- SmiSettersStream.cs
- SetMemberBinder.cs
- ApplicationInterop.cs
- RoleServiceManager.cs
- TypeFieldSchema.cs
- XmlReflectionMember.cs
- Control.cs
- EmptyStringExpandableObjectConverter.cs
- ImageClickEventArgs.cs
- ApplicationManager.cs
- ProtocolsConfigurationHandler.cs
- RectangleF.cs
- TreeNodeBinding.cs
- XmlDataSourceView.cs
- CatalogPart.cs
- DependencyObjectProvider.cs
- Token.cs
- KeySpline.cs
- ListBox.cs
- PropertyValue.cs
- BoolExpressionVisitors.cs
- ExtensibleClassFactory.cs
- Int16Storage.cs
- TextStore.cs
- Rijndael.cs
- IdnMapping.cs
- Peer.cs
- XmlDataCollection.cs
- PropertyInfoSet.cs
- EUCJPEncoding.cs
- IIS7WorkerRequest.cs
- ListViewItem.cs
- Selector.cs
- SessionParameter.cs
- HttpDebugHandler.cs