Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- StateMachineHistory.cs
- XmlNamedNodeMap.cs
- BeginStoryboard.cs
- RotateTransform3D.cs
- CharEnumerator.cs
- Calendar.cs
- DataTableReader.cs
- UshortList2.cs
- GeneralTransform3D.cs
- PrefixHandle.cs
- XmlAttribute.cs
- OdbcStatementHandle.cs
- StreamUpdate.cs
- ReadOnlyDictionary.cs
- PrinterSettings.cs
- AppDomainUnloadedException.cs
- KeySplineConverter.cs
- SqlCommand.cs
- ColumnHeader.cs
- WebScriptEnablingElement.cs
- StringUtil.cs
- DependencyPropertyAttribute.cs
- OAVariantLib.cs
- HuffmanTree.cs
- AuthenticateEventArgs.cs
- ComponentGlyph.cs
- DataView.cs
- InputScopeAttribute.cs
- AutomationPropertyInfo.cs
- CollectionBase.cs
- BamlVersionHeader.cs
- _LocalDataStoreMgr.cs
- ValidationEventArgs.cs
- ViewSimplifier.cs
- TextChangedEventArgs.cs
- ACL.cs
- CharacterHit.cs
- XmlSchemaAttributeGroupRef.cs
- entitydatasourceentitysetnameconverter.cs
- AsyncPostBackTrigger.cs
- ArrayWithOffset.cs
- XPathParser.cs
- MetadataPropertyvalue.cs
- AsyncOperation.cs
- PeerInvitationResponse.cs
- CompiledRegexRunner.cs
- OleStrCAMarshaler.cs
- GCHandleCookieTable.cs
- JsonGlobals.cs
- Model3DCollection.cs
- FloaterBaseParagraph.cs
- basecomparevalidator.cs
- NTAccount.cs
- HandlerElement.cs
- WebPartHelpVerb.cs
- EmptyReadOnlyDictionaryInternal.cs
- SecurityCriticalDataForSet.cs
- TimeEnumHelper.cs
- ColorConvertedBitmapExtension.cs
- BooleanStorage.cs
- GlyphRunDrawing.cs
- BoundColumn.cs
- TabControlCancelEvent.cs
- Viewport3DAutomationPeer.cs
- CrossSiteScriptingValidation.cs
- GridViewEditEventArgs.cs
- AssemblyCache.cs
- UrlMappingCollection.cs
- DBSqlParserColumnCollection.cs
- TypeConverter.cs
- Geometry3D.cs
- QilInvokeLateBound.cs
- QilFunction.cs
- TypeNameConverter.cs
- ToolTip.cs
- HostingEnvironment.cs
- BindingContext.cs
- WeakReferenceKey.cs
- SaveFileDialog.cs
- CompilerError.cs
- HttpCachePolicy.cs
- HttpCachePolicyBase.cs
- Attributes.cs
- ExpressionConverter.cs
- RepeaterItemEventArgs.cs
- SerializationStore.cs
- HostedElements.cs
- FlowDocumentReaderAutomationPeer.cs
- SqlDataRecord.cs
- Types.cs
- JsonStringDataContract.cs
- CompressEmulationStream.cs
- WindowAutomationPeer.cs
- HttpCookie.cs
- QilStrConcatenator.cs
- Bind.cs
- UIAgentAsyncBeginRequest.cs
- SqlCharStream.cs
- DataTableNewRowEvent.cs
- ExpandedProjectionNode.cs