Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / SplitterDesigner.cs / 1 / SplitterDesigner.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode", Scope="member", Target="System.Windows.Forms.Design.SplitterDesigner..ctor()")] namespace System.Windows.Forms.Design { using System.Design; using System.ComponentModel; using System.Diagnostics; using System.Drawing.Drawing2D; using System; using System.Drawing; using System.Windows.Forms; using Microsoft.Win32; ////// /// This class handles all design time behavior for the splitter class. This /// draws a visible border on the splitter if it doesn't have a border so the /// user knows where the boundaries of the splitter lie. /// internal class SplitterDesigner : ControlDesigner { public SplitterDesigner() { AutoResizeHandles = true; } ////// /// This draws a nice border around our panel. We need /// this because the panel can have no border and you can't /// tell where it is. /// ///private void DrawBorder(Graphics graphics) { Control ctl = Control; Rectangle rc = ctl.ClientRectangle; Color penColor; // Black or white pen? Depends on the color of the control. // if (ctl.BackColor.GetBrightness() < .5) { penColor = Color.White; } else { penColor = Color.Black; } using (Pen pen = new Pen(penColor)) { pen.DashStyle = DashStyle.Dash; rc.Width --; rc.Height--; graphics.DrawRectangle(pen, rc); } } /// /// /// Overrides our base class. Here we check to see if there /// is no border on the panel. If not, we draw one so that /// the panel shape is visible at design time. /// protected override void OnPaintAdornments(PaintEventArgs pe) { Splitter splitter = (Splitter)Component; base.OnPaintAdornments(pe); if (splitter.BorderStyle == BorderStyle.None) { DrawBorder(pe.Graphics); } } protected override void WndProc(ref Message m) { switch (m.Msg) { case NativeMethods.WM_WINDOWPOSCHANGED: // Really only care about window size changing Control source = (Control)Control; source.Invalidate(); break; } base.WndProc(ref m); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Parser.cs
- ServiceBusyException.cs
- DBSchemaRow.cs
- SerialStream.cs
- TrackingServices.cs
- Int64KeyFrameCollection.cs
- SymDocumentType.cs
- ClientUtils.cs
- ClientFormsAuthenticationMembershipProvider.cs
- ThemeDictionaryExtension.cs
- GridViewColumnHeader.cs
- X509Chain.cs
- DrawingContextDrawingContextWalker.cs
- _DomainName.cs
- ContextMenu.cs
- UrlMappingsSection.cs
- VerificationAttribute.cs
- ScriptControlDescriptor.cs
- PersonalizationProviderCollection.cs
- XmlToDatasetMap.cs
- PropertyDescriptorCollection.cs
- PictureBox.cs
- PropagatorResult.cs
- WebBrowserContainer.cs
- WebPartCatalogCloseVerb.cs
- AsymmetricAlgorithm.cs
- SQLUtility.cs
- EntitySqlQueryState.cs
- XslException.cs
- EntityWrapperFactory.cs
- X509UI.cs
- TextEditorSelection.cs
- DatagridviewDisplayedBandsData.cs
- SQLBytesStorage.cs
- ToolStripDropDownMenu.cs
- dataobject.cs
- SoapExtensionTypeElementCollection.cs
- BamlLocalizableResourceKey.cs
- SafeReadContext.cs
- IResourceProvider.cs
- XmlSchemaType.cs
- IntSecurity.cs
- SapiRecoInterop.cs
- ServiceThrottlingBehavior.cs
- MemoryMappedViewStream.cs
- DrawingState.cs
- ThreadStateException.cs
- ActivityMarkupSerializationProvider.cs
- IntranetCredentialPolicy.cs
- WinEventTracker.cs
- LoginView.cs
- DateTimeStorage.cs
- OleDbWrapper.cs
- BindingMAnagerBase.cs
- SqlRecordBuffer.cs
- RawStylusInputReport.cs
- _ProxyRegBlob.cs
- XmlCharType.cs
- DataGridTextBox.cs
- ProxyManager.cs
- CommittableTransaction.cs
- CellConstantDomain.cs
- unitconverter.cs
- SchemaImporter.cs
- WpfPayload.cs
- MenuItemStyle.cs
- DialogResultConverter.cs
- SessionEndingCancelEventArgs.cs
- RoleGroupCollection.cs
- ByteFacetDescriptionElement.cs
- VirtualDirectoryMapping.cs
- ExpressionParser.cs
- RightsManagementPermission.cs
- DataGridViewHitTestInfo.cs
- XsltException.cs
- SelectionUIHandler.cs
- DBNull.cs
- HtmlProps.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- ProfileModule.cs
- BamlTreeNode.cs
- TextEndOfSegment.cs
- ToolTipService.cs
- SpeechRecognitionEngine.cs
- PolyLineSegment.cs
- PointLightBase.cs
- invalidudtexception.cs
- ClaimComparer.cs
- DaylightTime.cs
- FacetValues.cs
- ActiveDocumentEvent.cs
- ProviderCommandInfoUtils.cs
- ComNativeDescriptor.cs
- SystemIPv4InterfaceProperties.cs
- HttpCapabilitiesEvaluator.cs
- ThreadPool.cs
- SmtpAuthenticationManager.cs
- WebPartEditVerb.cs
- RawStylusInputCustomData.cs
- SQLMoneyStorage.cs