Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / WinForms / Managed / System / WinForms / ProgressBarRenderer.cs / 1305376 / 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. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Query.cs
- ChangeDirector.cs
- Camera.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- MsmqNonTransactedPoisonHandler.cs
- RequestQueue.cs
- TCPClient.cs
- SoapIgnoreAttribute.cs
- SettingsPropertyCollection.cs
- CodeGeneratorAttribute.cs
- DateTimeOffsetConverter.cs
- SQLMoney.cs
- DataGridViewSelectedColumnCollection.cs
- SyndicationItem.cs
- OperatingSystemVersionCheck.cs
- ObjectDataSourceChooseMethodsPanel.cs
- DrawingGroupDrawingContext.cs
- httpserverutility.cs
- X509Utils.cs
- InternalConfigSettingsFactory.cs
- TrackBarRenderer.cs
- DataGridViewControlCollection.cs
- XmlProcessingInstruction.cs
- DbBuffer.cs
- _Rfc2616CacheValidators.cs
- EnumDataContract.cs
- CodeCompileUnit.cs
- KerberosReceiverSecurityToken.cs
- CompilationSection.cs
- DataTransferEventArgs.cs
- InvocationExpression.cs
- WebServiceTypeData.cs
- HostedElements.cs
- ZipIOLocalFileDataDescriptor.cs
- FrameSecurityDescriptor.cs
- JavaScriptString.cs
- WindowsHyperlink.cs
- HttpValueCollection.cs
- MultipartIdentifier.cs
- CorrelationResolver.cs
- DateBoldEvent.cs
- Internal.cs
- complextypematerializer.cs
- QuotedStringFormatReader.cs
- QilStrConcat.cs
- TextEndOfParagraph.cs
- BinaryConverter.cs
- DataSourceCache.cs
- SQLDecimal.cs
- ScrollEventArgs.cs
- ReadOnlyPropertyMetadata.cs
- FixedSOMSemanticBox.cs
- MessageTransmitTraceRecord.cs
- _LazyAsyncResult.cs
- SchemaImporterExtension.cs
- ListItemCollection.cs
- Visual.cs
- ProviderException.cs
- WriterOutput.cs
- DropSource.cs
- CollectionViewGroupInternal.cs
- ContainerTracking.cs
- DesignTimeTemplateParser.cs
- WindowsSecurityTokenAuthenticator.cs
- WinFormsComponentEditor.cs
- TypeBuilder.cs
- DesignerObject.cs
- Repeater.cs
- OpacityConverter.cs
- TypedTableBaseExtensions.cs
- InvariantComparer.cs
- RedistVersionInfo.cs
- DataServiceContext.cs
- UserControlAutomationPeer.cs
- UserControlParser.cs
- FederatedMessageSecurityOverHttpElement.cs
- TagNameToTypeMapper.cs
- ErrorFormatterPage.cs
- UserControl.cs
- SemanticResultValue.cs
- InteropBitmapSource.cs
- SpecialFolderEnumConverter.cs
- ConfigurationLockCollection.cs
- WebPartMinimizeVerb.cs
- ListViewUpdateEventArgs.cs
- SafeCryptContextHandle.cs
- WindowCollection.cs
- CodeArrayCreateExpression.cs
- OperationPerformanceCounters.cs
- CustomBindingCollectionElement.cs
- ClockController.cs
- XmlExceptionHelper.cs
- DescendentsWalkerBase.cs
- MasterPageBuildProvider.cs
- ExpandCollapsePattern.cs
- DataGridViewColumnConverter.cs
- AtlasWeb.Designer.cs
- TextReader.cs
- AjaxFrameworkAssemblyAttribute.cs
- TextServicesDisplayAttributePropertyRanges.cs