Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / Behavior / ContainerSelectorGlyph.cs / 1 / ContainerSelectorGlyph.cs
namespace System.Windows.Forms.Design.Behavior { using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.Design; using System.Diagnostics; using System.Drawing; using System.Drawing.Drawing2D; using System.Windows.Forms.Design; using System.Windows.Forms; ////// /// This is the glyph used to drag container controls around the designer. /// This glyph (and associated behavior) is created by the ParentControlDesigner. /// internal sealed class ContainerSelectorGlyph : Glyph { private Rectangle glyphBounds; private ContainerSelectorBehavior relatedBehavior; ////// /// ContainerSelectorGlyph constructor. /// internal ContainerSelectorGlyph(Rectangle containerBounds, int glyphSize, int glyphOffset, ContainerSelectorBehavior behavior) : base(behavior) { relatedBehavior = (ContainerSelectorBehavior)behavior; glyphBounds = new Rectangle(containerBounds.X + glyphOffset, containerBounds.Y - (int)(glyphSize * .5), glyphSize, glyphSize); } ////// /// The bounds of this Glyph. /// public override Rectangle Bounds { get { return glyphBounds; } } public Behavior RelatedBehavior { get { return relatedBehavior; } } ////// /// Simple hit test rule: if the point is contained within the bounds /// - then it is a positive hit test. /// public override Cursor GetHitTest(Point p) { if (glyphBounds.Contains(p) || relatedBehavior.OkToMove) { return Cursors.SizeAll; } return null; } private Bitmap glyph = null; private Bitmap MoveGlyph { get { if (glyph == null) { glyph = new Bitmap(typeof(ContainerSelectorGlyph), "MoverGlyph.bmp"); glyph.MakeTransparent(); } return glyph; } } ////// /// Very simple paint logic. /// public override void Paint(PaintEventArgs pe) { pe.Graphics.DrawImage(MoveGlyph, glyphBounds); } } } // 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
- RectangleConverter.cs
- DataServiceRequestArgs.cs
- ProcessManager.cs
- DataRow.cs
- EdmSchemaError.cs
- TagPrefixAttribute.cs
- ControlType.cs
- LinkClickEvent.cs
- ObjectSet.cs
- SamlDelegatingWriter.cs
- RegexMatchCollection.cs
- DataDocumentXPathNavigator.cs
- CompositeScriptReference.cs
- PatternMatcher.cs
- BCLDebug.cs
- TextEffectCollection.cs
- ByteAnimationBase.cs
- StoryFragments.cs
- HtmlTableRowCollection.cs
- GatewayDefinition.cs
- BooleanToVisibilityConverter.cs
- WsdlBuildProvider.cs
- DataConnectionHelper.cs
- UserControlDesigner.cs
- ConnectionConsumerAttribute.cs
- GradientBrush.cs
- SafeHandle.cs
- WebPartMinimizeVerb.cs
- EntityReference.cs
- CustomCategoryAttribute.cs
- CompModSwitches.cs
- XmlUtf8RawTextWriter.cs
- TextFormatter.cs
- TreeNodeStyleCollection.cs
- DocumentPageView.cs
- TabPage.cs
- PageRanges.cs
- ChangePassword.cs
- DataGridRow.cs
- DataGridViewColumnCollectionEditor.cs
- _Semaphore.cs
- ComPlusServiceHost.cs
- ReflectionHelper.cs
- SvcMapFile.cs
- SerTrace.cs
- ResourceReader.cs
- SspiNegotiationTokenAuthenticator.cs
- GridViewColumnCollection.cs
- DetailsViewCommandEventArgs.cs
- TaskExtensions.cs
- DeflateEmulationStream.cs
- ServiceOperationParameter.cs
- UnsafeNativeMethods.cs
- TablePattern.cs
- EUCJPEncoding.cs
- MissingManifestResourceException.cs
- SqlRemoveConstantOrderBy.cs
- HTMLTagNameToTypeMapper.cs
- GridViewRowCollection.cs
- ControlIdConverter.cs
- ScalarConstant.cs
- SimpleWebHandlerParser.cs
- SqlServices.cs
- TextViewBase.cs
- ConfigurationPropertyAttribute.cs
- HttpProfileBase.cs
- Parameter.cs
- CodeMethodReturnStatement.cs
- PersonalizableAttribute.cs
- FolderBrowserDialog.cs
- StrongNameUtility.cs
- NumberSubstitution.cs
- UnsafeNativeMethods.cs
- IisTraceWebEventProvider.cs
- MsmqBindingElementBase.cs
- BackEase.cs
- UTF8Encoding.cs
- FillBehavior.cs
- GenericTypeParameterConverter.cs
- MsmqIntegrationBindingElement.cs
- FragmentQuery.cs
- PersistenceException.cs
- LinkClickEvent.cs
- FrameworkContentElement.cs
- DispatcherBuilder.cs
- DrawingCollection.cs
- ListCollectionView.cs
- PropertyPath.cs
- FontCacheUtil.cs
- DataServiceRequestArgs.cs
- httpserverutility.cs
- PersonalizationProvider.cs
- RoleGroupCollection.cs
- SqlProvider.cs
- ExpressionPrefixAttribute.cs
- PathSegmentCollection.cs
- StackOverflowException.cs
- DataGridViewIntLinkedList.cs
- SEHException.cs
- EnumConverter.cs