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
- MultiAsyncResult.cs
- OrCondition.cs
- baseaxisquery.cs
- SafeRightsManagementHandle.cs
- HttpHandlersSection.cs
- DisposableCollectionWrapper.cs
- XmlEncoding.cs
- Stopwatch.cs
- listitem.cs
- AutomationIdentifierGuids.cs
- RegexBoyerMoore.cs
- ParseHttpDate.cs
- WindowsSolidBrush.cs
- Internal.cs
- DataSetMappper.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- PhysicalOps.cs
- XamlDesignerSerializationManager.cs
- DockPanel.cs
- TableLayoutCellPaintEventArgs.cs
- TextChange.cs
- ControlDesignerState.cs
- Triangle.cs
- X509SecurityTokenAuthenticator.cs
- SortAction.cs
- UDPClient.cs
- RectangleHotSpot.cs
- QueryStringParameter.cs
- FrameworkTemplate.cs
- XamlPoint3DCollectionSerializer.cs
- PersonalizationProviderHelper.cs
- AnimationException.cs
- XmlAttributeHolder.cs
- base64Transforms.cs
- ConsoleCancelEventArgs.cs
- ObservableCollection.cs
- Visual3D.cs
- DataControlImageButton.cs
- ResolveCriteria.cs
- Wildcard.cs
- StringValidator.cs
- CompilerParameters.cs
- ToolStripSplitButton.cs
- TextEditorSpelling.cs
- XmlSchemaInferenceException.cs
- XsdBuilder.cs
- ToolboxDataAttribute.cs
- UpdatePanelControlTrigger.cs
- SafeProcessHandle.cs
- ProfileEventArgs.cs
- ArrayConverter.cs
- PrimitiveXmlSerializers.cs
- TransactionInformation.cs
- ExpressionBuilder.cs
- BindingMAnagerBase.cs
- SqlNamer.cs
- SapiRecognizer.cs
- BinaryUtilClasses.cs
- ViewStateAttachedPropertyFeature.cs
- CodeCastExpression.cs
- Model3D.cs
- ChildrenQuery.cs
- PersonalizationState.cs
- SqlNotificationEventArgs.cs
- FileBasedResourceGroveler.cs
- __TransparentProxy.cs
- loginstatus.cs
- XmlBinaryReaderSession.cs
- EditorZoneBase.cs
- ThreadAbortException.cs
- IListConverters.cs
- MediaScriptCommandRoutedEventArgs.cs
- FontCacheLogic.cs
- XmlSchemaValidator.cs
- ReadOnlyObservableCollection.cs
- DockEditor.cs
- PagesChangedEventArgs.cs
- StoreItemCollection.Loader.cs
- SHA512Managed.cs
- ProfessionalColorTable.cs
- OracleBFile.cs
- BamlMapTable.cs
- XmlNamespaceMappingCollection.cs
- ClusterRegistryConfigurationProvider.cs
- XmlIlTypeHelper.cs
- TransactionFlowBindingElementImporter.cs
- TableLayoutStyle.cs
- ReversePositionQuery.cs
- DefaultObjectMappingItemCollection.cs
- ServiceHttpHandlerFactory.cs
- PackageProperties.cs
- SplashScreen.cs
- MimeReflector.cs
- Token.cs
- DetailsViewInsertEventArgs.cs
- ObjectIDGenerator.cs
- TimeSpanValidatorAttribute.cs
- PreProcessInputEventArgs.cs
- DataBindingCollection.cs
- DbReferenceCollection.cs