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
- OracleConnectionString.cs
- DataSourceNameHandler.cs
- WindowsRebar.cs
- WindowsListViewItem.cs
- AutomationElement.cs
- AppDomainManager.cs
- EUCJPEncoding.cs
- ItemType.cs
- ListDictionary.cs
- MultilineStringEditor.cs
- AssemblyBuilder.cs
- ImportCatalogPart.cs
- CategoryValueConverter.cs
- ThreadAbortException.cs
- Container.cs
- MessagePropertyDescription.cs
- SystemIcons.cs
- ChannelDemuxer.cs
- OverflowException.cs
- NotConverter.cs
- GenerateScriptTypeAttribute.cs
- DispatcherSynchronizationContext.cs
- FixedSOMGroup.cs
- WeakReadOnlyCollection.cs
- NativeCompoundFileAPIs.cs
- ListViewGroupItemCollection.cs
- ResourceReader.cs
- HtmlTableCellCollection.cs
- AnnotationDocumentPaginator.cs
- Transform3D.cs
- CopyCodeAction.cs
- LinqDataSourceContextEventArgs.cs
- ClaimComparer.cs
- MultipleViewPattern.cs
- ListControlActionList.cs
- SRGSCompiler.cs
- FileBasedResourceGroveler.cs
- MdImport.cs
- AvtEvent.cs
- InstanceContextManager.cs
- DataGridRow.cs
- TrackingProfile.cs
- Monitor.cs
- TransformerTypeCollection.cs
- controlskin.cs
- ViewGenResults.cs
- BeginStoryboard.cs
- XmlDocumentSurrogate.cs
- __ConsoleStream.cs
- TraceContextEventArgs.cs
- InternalRelationshipCollection.cs
- ScriptReferenceEventArgs.cs
- AssemblyResolver.cs
- Events.cs
- CssTextWriter.cs
- GcHandle.cs
- DbDataRecord.cs
- Process.cs
- Size.cs
- CorrelationTokenTypeConvertor.cs
- AccessDataSourceView.cs
- FontDialog.cs
- BitmapEffectGroup.cs
- FixedFlowMap.cs
- XmlSerializableWriter.cs
- XPathSelectionIterator.cs
- RecordManager.cs
- HierarchicalDataBoundControl.cs
- Point3DCollection.cs
- SiteMapNodeItemEventArgs.cs
- SmtpReplyReader.cs
- AttributeEmitter.cs
- RsaSecurityTokenParameters.cs
- Completion.cs
- XmlIgnoreAttribute.cs
- _AutoWebProxyScriptEngine.cs
- SurrogateDataContract.cs
- TextTreeFixupNode.cs
- WindowsSolidBrush.cs
- IndentedTextWriter.cs
- OdbcConnection.cs
- WebPartCancelEventArgs.cs
- Padding.cs
- DataViewSetting.cs
- RowUpdatedEventArgs.cs
- InputReportEventArgs.cs
- Size3D.cs
- SubMenuStyle.cs
- SQLConvert.cs
- BasicCellRelation.cs
- IncrementalCompileAnalyzer.cs
- ReliabilityContractAttribute.cs
- PseudoWebRequest.cs
- ApplicationException.cs
- SystemColorTracker.cs
- TextServicesContext.cs
- EncryptedData.cs
- UIElement.cs
- DataColumnMappingCollection.cs
- HeaderCollection.cs