Code:
/ DotNET / DotNET / 8.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
- XamlToRtfWriter.cs
- XmlTypeMapping.cs
- HierarchicalDataSourceControl.cs
- SmiEventSink.cs
- SchemaType.cs
- HasCopySemanticsAttribute.cs
- ServicesSection.cs
- DoubleAnimation.cs
- WinFormsComponentEditor.cs
- Types.cs
- Pts.cs
- Solver.cs
- DataGridViewCellEventArgs.cs
- PointHitTestParameters.cs
- CodeTypeDeclaration.cs
- CodeMemberMethod.cs
- RoutedCommand.cs
- PointKeyFrameCollection.cs
- Registry.cs
- CryptoStream.cs
- BinaryMessageEncodingElement.cs
- XmlValueConverter.cs
- EncryptedKeyHashIdentifierClause.cs
- CodePropertyReferenceExpression.cs
- Win32NamedPipes.cs
- TextFormatterImp.cs
- ILGenerator.cs
- srgsitem.cs
- LinkTarget.cs
- OutgoingWebRequestContext.cs
- altserialization.cs
- MaterialCollection.cs
- OdbcReferenceCollection.cs
- ToolStripDropTargetManager.cs
- WebPart.cs
- TextEffectResolver.cs
- XmlDocumentFragment.cs
- SimpleTypeResolver.cs
- GridViewHeaderRowPresenter.cs
- WSSecurityPolicy12.cs
- XXXOnTypeBuilderInstantiation.cs
- DurationConverter.cs
- COM2PictureConverter.cs
- CancelEventArgs.cs
- EventHandlersStore.cs
- WebResponse.cs
- ExtendedPropertyDescriptor.cs
- CharKeyFrameCollection.cs
- Matrix.cs
- ImageListStreamer.cs
- ContextStack.cs
- TypeDelegator.cs
- ScriptResourceInfo.cs
- SapiAttributeParser.cs
- _KerberosClient.cs
- SafeEventLogWriteHandle.cs
- DeviceSpecificDialogCachedState.cs
- _RequestCacheProtocol.cs
- SqlServer2KCompatibilityCheck.cs
- XmlWellformedWriter.cs
- ScalarConstant.cs
- RegisteredDisposeScript.cs
- DbConnectionClosed.cs
- COM2Properties.cs
- HtmlFormWrapper.cs
- DocumentPageHost.cs
- WinFormsUtils.cs
- IPAddressCollection.cs
- Point3DKeyFrameCollection.cs
- TransformerInfoCollection.cs
- StrongNameMembershipCondition.cs
- HyperLinkDesigner.cs
- XsdDataContractImporter.cs
- InputProcessorProfilesLoader.cs
- SspiHelper.cs
- ChangeBlockUndoRecord.cs
- ArraySortHelper.cs
- ElementInit.cs
- MobileTextWriter.cs
- SchemaElement.cs
- EncoderBestFitFallback.cs
- SyndicationSerializer.cs
- EncoderFallback.cs
- CommonDialog.cs
- HtmlFormParameterWriter.cs
- ImmutableAssemblyCacheEntry.cs
- ToolTip.cs
- NavigationPropertyAccessor.cs
- XmlSigningNodeWriter.cs
- CqlIdentifiers.cs
- ObjectNotFoundException.cs
- WebPartConnectionsCloseVerb.cs
- PageScaling.cs
- SecurityCriticalDataForSet.cs
- VectorValueSerializer.cs
- MarshalDirectiveException.cs
- DataBoundLiteralControl.cs
- WebHttpBehavior.cs
- MemberInfoSerializationHolder.cs
- DataServices.cs