Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / WinForms / Managed / System / WinForms / ProgressBarRenderer.cs / 1 / ProgressBarRenderer.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System; using System.Drawing; using System.Diagnostics.CodeAnalysis; using System.Windows.Forms.VisualStyles; using Microsoft.Win32; ////// /// public sealed class ProgressBarRenderer { //Make this per-thread, so that different threads can safely use these methods. [ThreadStatic] private static VisualStyleRenderer visualStyleRenderer = null; //cannot instantiate private ProgressBarRenderer() { } ////// This is a rendering class for the ProgressBar control. /// ////// /// public static bool IsSupported { get { return VisualStyleRenderer.IsSupported; // no downlevel support } } ////// Returns true if this class is supported for the current OS and user/application settings, /// otherwise returns false. /// ////// /// [ SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters") // Using Graphics instead of IDeviceContext intentionally ] public static void DrawHorizontalBar(Graphics g, Rectangle bounds) { InitializeRenderer(VisualStyleElement.ProgressBar.Bar.Normal); visualStyleRenderer.DrawBackground(g, bounds); } ////// Renders a horizontal bar. /// ////// /// [ SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters") // Using Graphics instead of IDeviceContext intentionally ] public static void DrawVerticalBar(Graphics g, Rectangle bounds) { InitializeRenderer(VisualStyleElement.ProgressBar.BarVertical.Normal); visualStyleRenderer.DrawBackground(g, bounds); } ////// Renders a vertical bar. /// ////// /// [ SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters") // Using Graphics instead of IDeviceContext intentionally ] public static void DrawHorizontalChunks(Graphics g, Rectangle bounds) { InitializeRenderer(VisualStyleElement.ProgressBar.Chunk.Normal); visualStyleRenderer.DrawBackground(g, bounds); } ////// Renders a number of constant size horizontal chunks in the given bounds. /// ////// /// [ SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters") // Using Graphics instead of IDeviceContext intentionally ] public static void DrawVerticalChunks(Graphics g, Rectangle bounds) { InitializeRenderer(VisualStyleElement.ProgressBar.ChunkVertical.Normal); visualStyleRenderer.DrawBackground(g, bounds); } ////// Renders a number of constant size vertical chunks in the given bounds. /// ////// /// public static int ChunkThickness { get { InitializeRenderer(VisualStyleElement.ProgressBar.Chunk.Normal); return (visualStyleRenderer.GetInteger(IntegerProperty.ProgressChunkSize)); } } ////// Returns the width/height of a single horizontal/vertical progress bar chunk. /// ////// /// public static int ChunkSpaceThickness { get { InitializeRenderer(VisualStyleElement.ProgressBar.Chunk.Normal); return (visualStyleRenderer.GetInteger(IntegerProperty.ProgressSpaceSize)); } } private static void InitializeRenderer(VisualStyleElement element) { if (visualStyleRenderer == null) { visualStyleRenderer = new VisualStyleRenderer(element); } else { visualStyleRenderer.SetParameters(element); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ ///// Returns the width/height of the space between horizontal/vertical progress bar chunks. /// ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System; using System.Drawing; using System.Diagnostics.CodeAnalysis; using System.Windows.Forms.VisualStyles; using Microsoft.Win32; ////// /// public sealed class ProgressBarRenderer { //Make this per-thread, so that different threads can safely use these methods. [ThreadStatic] private static VisualStyleRenderer visualStyleRenderer = null; //cannot instantiate private ProgressBarRenderer() { } ////// This is a rendering class for the ProgressBar control. /// ////// /// public static bool IsSupported { get { return VisualStyleRenderer.IsSupported; // no downlevel support } } ////// Returns true if this class is supported for the current OS and user/application settings, /// otherwise returns false. /// ////// /// [ SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters") // Using Graphics instead of IDeviceContext intentionally ] public static void DrawHorizontalBar(Graphics g, Rectangle bounds) { InitializeRenderer(VisualStyleElement.ProgressBar.Bar.Normal); visualStyleRenderer.DrawBackground(g, bounds); } ////// Renders a horizontal bar. /// ////// /// [ SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters") // Using Graphics instead of IDeviceContext intentionally ] public static void DrawVerticalBar(Graphics g, Rectangle bounds) { InitializeRenderer(VisualStyleElement.ProgressBar.BarVertical.Normal); visualStyleRenderer.DrawBackground(g, bounds); } ////// Renders a vertical bar. /// ////// /// [ SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters") // Using Graphics instead of IDeviceContext intentionally ] public static void DrawHorizontalChunks(Graphics g, Rectangle bounds) { InitializeRenderer(VisualStyleElement.ProgressBar.Chunk.Normal); visualStyleRenderer.DrawBackground(g, bounds); } ////// Renders a number of constant size horizontal chunks in the given bounds. /// ////// /// [ SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters") // Using Graphics instead of IDeviceContext intentionally ] public static void DrawVerticalChunks(Graphics g, Rectangle bounds) { InitializeRenderer(VisualStyleElement.ProgressBar.ChunkVertical.Normal); visualStyleRenderer.DrawBackground(g, bounds); } ////// Renders a number of constant size vertical chunks in the given bounds. /// ////// /// public static int ChunkThickness { get { InitializeRenderer(VisualStyleElement.ProgressBar.Chunk.Normal); return (visualStyleRenderer.GetInteger(IntegerProperty.ProgressChunkSize)); } } ////// Returns the width/height of a single horizontal/vertical progress bar chunk. /// ////// /// public static int ChunkSpaceThickness { get { InitializeRenderer(VisualStyleElement.ProgressBar.Chunk.Normal); return (visualStyleRenderer.GetInteger(IntegerProperty.ProgressSpaceSize)); } } private static void InitializeRenderer(VisualStyleElement element) { if (visualStyleRenderer == null) { visualStyleRenderer = new VisualStyleRenderer(element); } else { visualStyleRenderer.SetParameters(element); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// Returns the width/height of the space between horizontal/vertical progress bar chunks. /// ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DrawingVisual.cs
- HttpCapabilitiesSectionHandler.cs
- DesignTimeParseData.cs
- GeometryValueSerializer.cs
- CodeSnippetExpression.cs
- InternalControlCollection.cs
- HtmlDocument.cs
- AmbientEnvironment.cs
- LazyTextWriterCreator.cs
- KeyMatchBuilder.cs
- MatrixKeyFrameCollection.cs
- SafeFindHandle.cs
- FileEnumerator.cs
- RootBrowserWindow.cs
- AppLevelCompilationSectionCache.cs
- Stroke.cs
- ChannelPoolSettings.cs
- DbConnectionStringBuilder.cs
- InternalMappingException.cs
- XmlNode.cs
- PrefixQName.cs
- DynamicQueryableWrapper.cs
- WSSecurityOneDotOneSendSecurityHeader.cs
- NamespaceInfo.cs
- SQLRoleProvider.cs
- XmlNamespaceMappingCollection.cs
- DataGridViewImageCell.cs
- QueryExpr.cs
- COM2TypeInfoProcessor.cs
- SqlClientWrapperSmiStreamChars.cs
- SessionPageStateSection.cs
- sqlnorm.cs
- InstallerTypeAttribute.cs
- GPPOINT.cs
- QueryOperationResponseOfT.cs
- VisualStyleTypesAndProperties.cs
- Stroke.cs
- FunctionImportElement.cs
- InvokeHandlers.cs
- MessageBuilder.cs
- TabRenderer.cs
- HtmlAnchor.cs
- WebPartConnectionCollection.cs
- MetadataItemEmitter.cs
- CookielessHelper.cs
- QilGeneratorEnv.cs
- DescendentsWalker.cs
- SamlAttribute.cs
- Attributes.cs
- IndexedGlyphRun.cs
- WebConvert.cs
- FileSystemInfo.cs
- _SslState.cs
- __ConsoleStream.cs
- URI.cs
- ModelFunction.cs
- DBPropSet.cs
- CodeGenerator.cs
- WindowsSolidBrush.cs
- RSAOAEPKeyExchangeDeformatter.cs
- DefaultHttpHandler.cs
- CodeObjectCreateExpression.cs
- AttributeEmitter.cs
- SystemException.cs
- UnSafeCharBuffer.cs
- DecoderFallback.cs
- dbenumerator.cs
- SystemResourceHost.cs
- HwndStylusInputProvider.cs
- SerializerWriterEventHandlers.cs
- AutomationAttributeInfo.cs
- CodeParameterDeclarationExpressionCollection.cs
- MetadataArtifactLoaderComposite.cs
- ObjectDataSourceSelectingEventArgs.cs
- SupportsEventValidationAttribute.cs
- EventArgs.cs
- COMException.cs
- Wizard.cs
- Models.cs
- WorkerRequest.cs
- TableRowGroup.cs
- EntityProviderFactory.cs
- AuthenticationConfig.cs
- CodeGenerator.cs
- InputProviderSite.cs
- CalendarItem.cs
- XmlHierarchicalEnumerable.cs
- WsatServiceAddress.cs
- NativeMethods.cs
- FormDocumentDesigner.cs
- ContextItemManager.cs
- WebPartExportVerb.cs
- GridViewRowPresenterBase.cs
- GenericPrincipal.cs
- FocusWithinProperty.cs
- BindMarkupExtensionSerializer.cs
- TreeNode.cs
- FileBasedResourceGroveler.cs
- listviewsubitemcollectioneditor.cs