Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / WinForms / Managed / System / WinForms / OSFeature.cs / 1 / OSFeature.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System.Configuration.Assemblies; using System.Diagnostics; using System; using System.Security; using System.Security.Permissions; ////// /// public class OSFeature : FeatureSupport { ///Provides operating-system specific feature queries. ////// /// public static readonly object LayeredWindows = new object(); ///Represents the layered, top-level windows feature. This /// ///field is read-only. /// /// public static readonly object Themes = new object(); private static OSFeature feature = null; private static bool themeSupportTested = false; private static bool themeSupport = false; ///Determines if the OS supports themes ////// /// /// protected OSFeature() { } ////// Initializes a new instance of the ///class. /// /// /// /// public static OSFeature Feature { get { if (feature == null) feature = new OSFeature(); return feature; } } ///Represents the ///instance of to use for feature queries. This property is read-only. /// /// public override Version GetVersionPresent(object feature) { Version featureVersion = null; if (feature == LayeredWindows) { if (Environment.OSVersion.Platform == System.PlatformID.Win32NT && Environment.OSVersion.Version.CompareTo(new Version(5, 0, 0, 0)) >= 0) { featureVersion = new Version(0, 0, 0, 0); } } else if (feature == Themes) { if (!themeSupportTested) { try { SafeNativeMethods.IsAppThemed(); themeSupport = true; } catch { themeSupport = false; } themeSupportTested = true; } if (themeSupport) { featureVersion = new Version(0, 0, 0, 0); } } return featureVersion; } internal bool OnXp { get { bool onXp = false; if (Environment.OSVersion.Platform == System.PlatformID.Win32NT) { onXp = Environment.OSVersion.Version.CompareTo(new Version(5, 1, 0, 0)) >= 0; } return onXp; } } internal bool OnWin2k { get { bool onWin2k = false; if (Environment.OSVersion.Platform == System.PlatformID.Win32NT) { onWin2k = Environment.OSVersion.Version.CompareTo(new Version(5, 0, 0, 0)) >= 0; } return onWin2k; } } ///Retrieves the version of the specified feature currently available on the system. ////// /// public static bool IsPresent(SystemParameter enumVal) { switch (enumVal) { case SystemParameter.DropShadow: return Feature.OnXp; case SystemParameter.FlatMenu: return Feature.OnXp; case SystemParameter.FontSmoothingContrastMetric: return Feature.OnXp; case SystemParameter.FontSmoothingTypeMetric: return Feature.OnXp; case SystemParameter.MenuFadeEnabled: return Feature.OnWin2k; case SystemParameter.SelectionFade: return Feature.OnWin2k; case SystemParameter.ToolTipAnimationMetric: return Feature.OnWin2k; case SystemParameter.UIEffects: return Feature.OnWin2k; case SystemParameter.CaretWidthMetric: return Feature.OnWin2k; case SystemParameter.VerticalFocusThicknessMetric: return Feature.OnXp; case SystemParameter.HorizontalFocusThicknessMetric: return Feature.OnXp; } return false; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.Retrieves whether SystemParameterType is supported on the Current OS version. ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TriggerBase.cs
- MenuItem.cs
- SpellerHighlightLayer.cs
- ClassHandlersStore.cs
- securitycriticaldataformultiplegetandset.cs
- IriParsingElement.cs
- ToolboxBitmapAttribute.cs
- ClonableStack.cs
- Formatter.cs
- ComboBox.cs
- PackageController.cs
- AffineTransform3D.cs
- Html32TextWriter.cs
- CodeDomComponentSerializationService.cs
- RoleGroupCollection.cs
- XmlObjectSerializerContext.cs
- DirectionalLight.cs
- BooleanToVisibilityConverter.cs
- LineSegment.cs
- AlgoModule.cs
- DataView.cs
- HierarchicalDataBoundControlAdapter.cs
- EncryptedPackageFilter.cs
- WindowsUpDown.cs
- SqlTransaction.cs
- GeometryHitTestResult.cs
- XmlReflectionMember.cs
- ConstraintEnumerator.cs
- Quaternion.cs
- RegistrationContext.cs
- DeclaredTypeElement.cs
- X509Chain.cs
- EncoderExceptionFallback.cs
- TreeNodeConverter.cs
- BamlVersionHeader.cs
- XmlChoiceIdentifierAttribute.cs
- HyperLinkStyle.cs
- UrlMapping.cs
- CodeTypeParameterCollection.cs
- ToolStripItemClickedEventArgs.cs
- KnownAssembliesSet.cs
- PriorityRange.cs
- UpdatePanelTriggerCollection.cs
- DataColumnCollection.cs
- RemotingAttributes.cs
- OptionalColumn.cs
- XmlException.cs
- ControlPaint.cs
- ICspAsymmetricAlgorithm.cs
- ComPlusContractBehavior.cs
- EntityKeyElement.cs
- DoubleLinkList.cs
- StructuredProperty.cs
- AuthenticationServiceManager.cs
- BooleanKeyFrameCollection.cs
- ProvidersHelper.cs
- GridViewColumnHeaderAutomationPeer.cs
- MobileControlDesigner.cs
- CurrencyWrapper.cs
- DBSchemaTable.cs
- PermissionRequestEvidence.cs
- ControlValuePropertyAttribute.cs
- XPathSelfQuery.cs
- AttributedMetaModel.cs
- EventMetadata.cs
- IndexedGlyphRun.cs
- OdbcRowUpdatingEvent.cs
- ContextProperty.cs
- ChtmlLinkAdapter.cs
- Interlocked.cs
- ClassicBorderDecorator.cs
- Control.cs
- FusionWrap.cs
- CodeGenerationManager.cs
- UserPreferenceChangingEventArgs.cs
- HttpCapabilitiesSectionHandler.cs
- UntrustedRecipientException.cs
- SqlFunctionAttribute.cs
- IISMapPath.cs
- SoapTypeAttribute.cs
- PeerInvitationResponse.cs
- QilXmlReader.cs
- RestHandler.cs
- NameScope.cs
- IntPtr.cs
- SqlConnectionPoolProviderInfo.cs
- BufferedReadStream.cs
- JoinTreeSlot.cs
- ManagementScope.cs
- ReturnEventArgs.cs
- AnnotationHelper.cs
- MSG.cs
- EntryWrittenEventArgs.cs
- VisualBrush.cs
- ValuePattern.cs
- SqlIdentifier.cs
- EventItfInfo.cs
- UserNameSecurityToken.cs
- CustomWebEventKey.cs
- WindowsServiceCredential.cs