Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / DesignerToolStripControlHost.cs / 1 / DesignerToolStripControlHost.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
/*
*/
namespace System.Windows.Forms.Design {
using System.Design;
using Accessibility;
using System.ComponentModel;
using System.Diagnostics;
using System;
using System.Security;
using System.Security.Permissions;
using System.ComponentModel.Design;
using System.Windows.Forms;
using System.Drawing;
using System.Drawing.Design;
using System.Windows.Forms.Design.Behavior;
///
///
/// This internal class is used by the new ToolStripDesigner to add a dummy
/// node to the end. This class inherits from WinBarControlHost and overrides the
/// CanSelect property so that the dummy Node when shown in the designer doesnt show
/// selection on Mouse movements.
/// The image is set to theDummyNodeImage embedded into the resources.
///
///
internal class DesignerToolStripControlHost : ToolStripControlHost, IComponent
{
private BehaviorService b;
internal ToolStrip parent=null;
//
// Constructor
//
///
public DesignerToolStripControlHost(Control c) : base(c)
{
// this ToolStripItem should not have defaultPadding.
this.Margin = Padding.Empty;
}
///
///
/// We need to return Default size for Editor ToolStrip (92, 22).
///
protected override Size DefaultSize {
get {
return new Size(92, 22);
}
}
internal GlyphCollection GetGlyphs(ToolStrip parent, GlyphCollection glyphs, System.Windows.Forms.Design.Behavior.Behavior standardBehavior) {
if (b == null)
{
b = (BehaviorService)parent.Site.GetService(typeof(BehaviorService));
}
Point loc = b.ControlToAdornerWindow(this.Parent);
Rectangle r = this.Bounds;
r.Offset(loc);
r.Inflate (-2 , -2);
glyphs.Add(new MiniLockedBorderGlyph(r, SelectionBorderGlyphType.Top, standardBehavior, true));
glyphs.Add(new MiniLockedBorderGlyph(r, SelectionBorderGlyphType.Bottom, standardBehavior, true));
glyphs.Add(new MiniLockedBorderGlyph(r, SelectionBorderGlyphType.Left, standardBehavior, true));
glyphs.Add(new MiniLockedBorderGlyph(r, SelectionBorderGlyphType.Right, standardBehavior, true));
return glyphs;
}
internal void RefreshSelectionGlyph()
{
ToolStrip miniToolStrip = this.Control as ToolStrip;
if (miniToolStrip != null)
{
ToolStripTemplateNode.MiniToolStripRenderer renderer = miniToolStrip.Renderer as ToolStripTemplateNode.MiniToolStripRenderer;
if (renderer != null)
{
renderer.State = (int)TemplateNodeSelectionState.None;
miniToolStrip.Invalidate();
}
}
}
internal void SelectControl()
{
ToolStrip miniToolStrip = this.Control as ToolStrip;
if (miniToolStrip != null)
{
ToolStripTemplateNode.MiniToolStripRenderer renderer = miniToolStrip.Renderer as ToolStripTemplateNode.MiniToolStripRenderer;
if (renderer != null)
{
renderer.State = (int)TemplateNodeSelectionState.TemplateNodeSelected;
miniToolStrip.Invalidate();
}
}
}
}
}
// 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
- DesignerVerb.cs
- SByte.cs
- SiteMapPathDesigner.cs
- ReferenceConverter.cs
- ObjectIDGenerator.cs
- DataGridViewCellParsingEventArgs.cs
- ListView.cs
- HttpWrapper.cs
- ResourceKey.cs
- DictionarySectionHandler.cs
- EFColumnProvider.cs
- HttpChannelListener.cs
- SAPIEngineTypes.cs
- ControlPropertyNameConverter.cs
- ServicePointManager.cs
- TextParagraphProperties.cs
- InternalRelationshipCollection.cs
- DataBoundControlDesigner.cs
- DropShadowEffect.cs
- ApplicationGesture.cs
- LinqDataSource.cs
- WebEncodingValidatorAttribute.cs
- DbParameterHelper.cs
- ByteStreamGeometryContext.cs
- HierarchicalDataSourceIDConverter.cs
- PropertyPathConverter.cs
- AttributeEmitter.cs
- cookie.cs
- KeyedHashAlgorithm.cs
- DataStorage.cs
- DCSafeHandle.cs
- LoginUtil.cs
- EnterpriseServicesHelper.cs
- SQLBytesStorage.cs
- Helper.cs
- ClickablePoint.cs
- EdmMember.cs
- MetadataItemCollectionFactory.cs
- HtmlTitle.cs
- ControlCodeDomSerializer.cs
- Header.cs
- WindowsTreeView.cs
- EmptyQuery.cs
- BrushConverter.cs
- TextMarkerSource.cs
- MapPathBasedVirtualPathProvider.cs
- SQLDecimalStorage.cs
- DataColumnCollection.cs
- WindowsGrip.cs
- Enum.cs
- NonParentingControl.cs
- OracleString.cs
- HttpCacheVaryByContentEncodings.cs
- TypeLibConverter.cs
- UseLicense.cs
- ZoneIdentityPermission.cs
- MissingMemberException.cs
- DataGridViewCellLinkedList.cs
- ProgressiveCrcCalculatingStream.cs
- ButtonChrome.cs
- ArgumentDirectionHelper.cs
- TextDecoration.cs
- SelectionItemProviderWrapper.cs
- FieldAccessException.cs
- HttpServerVarsCollection.cs
- SRef.cs
- CookieHandler.cs
- ConditionalBranch.cs
- TraceHandler.cs
- UrlPropertyAttribute.cs
- NativeMethods.cs
- HostProtectionException.cs
- GridSplitterAutomationPeer.cs
- BehaviorEditorPart.cs
- DataSourceDescriptorCollection.cs
- OdbcParameter.cs
- Rect.cs
- AndCondition.cs
- DocumentEventArgs.cs
- TypeExtension.cs
- IPPacketInformation.cs
- PeerServiceMessageContracts.cs
- EdmRelationshipRoleAttribute.cs
- ConvertTextFrag.cs
- ImageClickEventArgs.cs
- LayoutEngine.cs
- RouteItem.cs
- SqlDataSource.cs
- ConfigurationManagerInternalFactory.cs
- XmlTextReaderImpl.cs
- AddingNewEventArgs.cs
- Model3D.cs
- SoapHeaders.cs
- StrokeCollectionDefaultValueFactory.cs
- DbProviderFactories.cs
- EndOfStreamException.cs
- CryptoStream.cs
- PeerDuplexChannel.cs
- SystemIPInterfaceStatistics.cs
- RefType.cs