Code:
/ DotNET / DotNET / 8.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
- ResXBuildProvider.cs
- Cell.cs
- GifBitmapDecoder.cs
- XmlNode.cs
- PathGradientBrush.cs
- CheckBox.cs
- TransformProviderWrapper.cs
- StorageRoot.cs
- InvalidWorkflowException.cs
- MenuItemCollection.cs
- AutoCompleteStringCollection.cs
- ListManagerBindingsCollection.cs
- WmlImageAdapter.cs
- TargetParameterCountException.cs
- SqlBuffer.cs
- SymmetricKeyWrap.cs
- ColorTranslator.cs
- ListViewCancelEventArgs.cs
- EncoderParameter.cs
- SrgsText.cs
- TableSectionStyle.cs
- NativeMethods.cs
- StateMachineHelpers.cs
- FilterableAttribute.cs
- CompensatableTransactionScopeActivityDesigner.cs
- KeyNotFoundException.cs
- Separator.cs
- Expander.cs
- TreeIterators.cs
- DataGridViewAutoSizeModeEventArgs.cs
- ComponentTray.cs
- PartBasedPackageProperties.cs
- ToolStripCustomTypeDescriptor.cs
- BitmapCacheBrush.cs
- CheckBox.cs
- BindingsCollection.cs
- FilteredAttributeCollection.cs
- CodeMethodInvokeExpression.cs
- URI.cs
- HttpModuleActionCollection.cs
- PersonalizationDictionary.cs
- ListViewAutomationPeer.cs
- XmlSchemaInclude.cs
- ExceptionCollection.cs
- RelationshipManager.cs
- IsolatedStorageFile.cs
- RuleSettings.cs
- ConfigUtil.cs
- TagElement.cs
- XmlWriter.cs
- IERequestCache.cs
- ServiceDurableInstanceContextProvider.cs
- DataBindingHandlerAttribute.cs
- DeferredElementTreeState.cs
- FamilyMapCollection.cs
- RectangleConverter.cs
- HttpsHostedTransportConfiguration.cs
- EnumMemberAttribute.cs
- SystemKeyConverter.cs
- RoleService.cs
- Decoder.cs
- CompiledQuery.cs
- XhtmlTextWriter.cs
- SQLDoubleStorage.cs
- CrossSiteScriptingValidation.cs
- PlatformCulture.cs
- COM2IManagedPerPropertyBrowsingHandler.cs
- hresults.cs
- LinqDataSourceHelper.cs
- MissingMemberException.cs
- GroupBoxDesigner.cs
- RichTextBoxConstants.cs
- OSFeature.cs
- AsyncCodeActivity.cs
- ItemTypeToolStripMenuItem.cs
- CompilationSection.cs
- Compiler.cs
- DataReaderContainer.cs
- CodeVariableDeclarationStatement.cs
- PersistenceProviderBehavior.cs
- IODescriptionAttribute.cs
- CustomCategoryAttribute.cs
- _NetRes.cs
- MemberAccessException.cs
- TreeSet.cs
- ArrowControl.xaml.cs
- DebugView.cs
- CompilerWrapper.cs
- GridViewRow.cs
- CuspData.cs
- DiscreteKeyFrames.cs
- DeviceSpecificChoiceCollection.cs
- ProbeDuplexCD1AsyncResult.cs
- SqlBulkCopyColumnMappingCollection.cs
- SpecialTypeDataContract.cs
- BeginEvent.cs
- DynamicQueryableWrapper.cs
- GenericsInstances.cs
- BulletedListEventArgs.cs
- GetWinFXPath.cs