Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / Behavior / DesignerActionKeyboardBehavior.cs / 1 / DesignerActionKeyboardBehavior.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.Windows.Forms.Design; using System.Diagnostics.CodeAnalysis; ////// /// internal sealed class DesignerActionKeyboardBehavior : Behavior { private DesignerActionPanel panel; private IMenuCommandService menuService; private DesignerActionUIService daUISvc; private static readonly Guid VSStandardCommandSet97 = new Guid("{5efc7975-14bc-11cf-9b2b-00aa00573819}"); public DesignerActionKeyboardBehavior(DesignerActionPanel panel, IServiceProvider serviceProvider, BehaviorService behaviorService) : base(true, behaviorService) { this.panel = panel; if(serviceProvider != null) { this.menuService = serviceProvider.GetService(typeof(IMenuCommandService)) as IMenuCommandService; Debug.Assert(menuService != null, "we should have found a menu service here..."); this.daUISvc = serviceProvider.GetService(typeof(DesignerActionUIService)) as DesignerActionUIService; } } // THIS shoudl not stay here, creation of a custom command or of the real thing should be handled in the // designeractionpanel itself public override MenuCommand FindCommand(CommandID commandId) { if(panel != null && menuService != null) { // if the command we're looking for is handled by the panel, just tell VS that this command is // disabled. otherwise let it through as usual... foreach(CommandID candidateCommandId in panel.FilteredCommandIDs) { if(candidateCommandId.Equals(commandId)) { MenuCommand dummyMC = new MenuCommand(delegate{}, commandId); dummyMC.Enabled = false; //Debug.WriteLine("Found command id in DesignerActionPAnel supported commands"); return dummyMC; } } // in case of a ctrl-tab we need to close the DAP if (daUISvc != null && commandId.Guid == DesignerActionKeyboardBehavior.VSStandardCommandSet97 && commandId.ID == 1124) { daUISvc.HideUI(null); } } //Debug.WriteLine("NOT Found command id in DesignerActionPAnel supported commands. ASking base..."); return base.FindCommand(commandId); // this will route the request to the parent behavior } } } // 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
- SafeRightsManagementPubHandle.cs
- ProtocolInformationWriter.cs
- SelectingProviderEventArgs.cs
- UInt16Storage.cs
- _NegotiateClient.cs
- LineGeometry.cs
- UserControl.cs
- MemberBinding.cs
- ProviderUtil.cs
- VectorCollection.cs
- XpsResource.cs
- WinEventQueueItem.cs
- XmlObjectSerializerContext.cs
- QueryGenerator.cs
- Vector3DCollectionConverter.cs
- CachedFontFace.cs
- TemplateAction.cs
- TextPattern.cs
- SharedPerformanceCounter.cs
- EdmToObjectNamespaceMap.cs
- NullableBoolConverter.cs
- HttpModuleActionCollection.cs
- SqlRemoveConstantOrderBy.cs
- FragmentQueryKB.cs
- NumericUpDown.cs
- MinimizableAttributeTypeConverter.cs
- ClientUtils.cs
- ModuleElement.cs
- XhtmlBasicCommandAdapter.cs
- HttpDictionary.cs
- SiteMapNodeItem.cs
- AssemblyBuilderData.cs
- FormatterServices.cs
- DiscreteKeyFrames.cs
- ElementFactory.cs
- InputMethodStateChangeEventArgs.cs
- HttpConfigurationContext.cs
- Profiler.cs
- SafeTimerHandle.cs
- VectorAnimationUsingKeyFrames.cs
- NavigationExpr.cs
- PartialTrustVisibleAssembly.cs
- ConnectivityStatus.cs
- GradientBrush.cs
- TextElementEnumerator.cs
- WindowsToolbarAsMenu.cs
- FileIOPermission.cs
- DiagnosticTrace.cs
- DesignerForm.cs
- StringAnimationUsingKeyFrames.cs
- EnvelopedPkcs7.cs
- CodeSpit.cs
- TreeBuilderBamlTranslator.cs
- Constants.cs
- ProviderException.cs
- TaskResultSetter.cs
- RestHandler.cs
- FilteredReadOnlyMetadataCollection.cs
- EntityCodeGenerator.cs
- VarInfo.cs
- SocketException.cs
- Message.cs
- HtmlShim.cs
- ClientScriptManagerWrapper.cs
- XPathPatternParser.cs
- DictionaryBase.cs
- Tuple.cs
- RegularExpressionValidator.cs
- BatchStream.cs
- AddressAccessDeniedException.cs
- EntityModelSchemaGenerator.cs
- BaseTemplateCodeDomTreeGenerator.cs
- ToolStripOverflowButton.cs
- GridViewColumnCollection.cs
- Vars.cs
- ActiveDesignSurfaceEvent.cs
- ButtonAutomationPeer.cs
- DEREncoding.cs
- CommandTreeTypeHelper.cs
- EventSetterHandlerConverter.cs
- BamlLocalizabilityResolver.cs
- BamlLocalizationDictionary.cs
- ComboBoxRenderer.cs
- WebHttpBindingElement.cs
- DynamicPropertyReader.cs
- MessageSecurityProtocol.cs
- ClientType.cs
- ObjectStateEntryOriginalDbUpdatableDataRecord.cs
- GlobalItem.cs
- RoleManagerEventArgs.cs
- StrokeIntersection.cs
- DynamicDataExtensions.cs
- CursorConverter.cs
- FormatterConverter.cs
- IdentityHolder.cs
- DesignColumnCollection.cs
- GradientStop.cs
- InternalConfigEventArgs.cs
- Substitution.cs
- PersonalizationProviderCollection.cs