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
- ConditionCollection.cs
- StreamWriter.cs
- RuntimeVariableList.cs
- TabletDevice.cs
- DataControlPagerLinkButton.cs
- DocumentOrderQuery.cs
- SqlDataReaderSmi.cs
- DataErrorValidationRule.cs
- DbProviderFactories.cs
- EditorOptionAttribute.cs
- ResourcePropertyMemberCodeDomSerializer.cs
- FormDocumentDesigner.cs
- Propagator.JoinPropagator.cs
- Line.cs
- AdapterDictionary.cs
- DiagnosticStrings.cs
- WpfSharedXamlSchemaContext.cs
- ListBoxAutomationPeer.cs
- arabicshape.cs
- PathFigureCollection.cs
- ControlParameter.cs
- ScriptResourceInfo.cs
- BindingGroup.cs
- WebRequest.cs
- Int32KeyFrameCollection.cs
- TypeInfo.cs
- HashMembershipCondition.cs
- SqlBooleanMismatchVisitor.cs
- IndexedEnumerable.cs
- EmptyControlCollection.cs
- ToolStripDropDownItemDesigner.cs
- GregorianCalendarHelper.cs
- AdCreatedEventArgs.cs
- DataSpaceManager.cs
- RadioButtonList.cs
- TableAdapterManagerGenerator.cs
- SignatureDescription.cs
- AnimationTimeline.cs
- InstanceCollisionException.cs
- DiscardableAttribute.cs
- Lease.cs
- PenThreadWorker.cs
- PeerCollaborationPermission.cs
- AuthorizationRuleCollection.cs
- EntityViewContainer.cs
- BuildDependencySet.cs
- XmlSchemaAttribute.cs
- DownloadProgressEventArgs.cs
- CodeGotoStatement.cs
- ScrollContentPresenter.cs
- XmlReader.cs
- RegexGroupCollection.cs
- DataRecordObjectView.cs
- DataGridViewCellLinkedList.cs
- MetadataItemCollectionFactory.cs
- typedescriptorpermissionattribute.cs
- selecteditemcollection.cs
- Viewport2DVisual3D.cs
- SecurityElement.cs
- XmlExpressionDumper.cs
- DefaultTypeArgumentAttribute.cs
- XmlWriterSettings.cs
- ZipIOBlockManager.cs
- TemplateModeChangedEventArgs.cs
- ProcessModule.cs
- StylusPointProperty.cs
- CounterCreationData.cs
- NamedObject.cs
- BulletDecorator.cs
- AnnotationAdorner.cs
- entitydatasourceentitysetnameconverter.cs
- DuplexChannelFactory.cs
- EdmProperty.cs
- StagingAreaInputItem.cs
- HwndHostAutomationPeer.cs
- KnownBoxes.cs
- SmtpDigestAuthenticationModule.cs
- MsmqAppDomainProtocolHandler.cs
- GetChildSubtree.cs
- FieldBuilder.cs
- SemaphoreSecurity.cs
- HtmlMobileTextWriter.cs
- DetailsViewCommandEventArgs.cs
- DataGridItem.cs
- TreeBuilderXamlTranslator.cs
- HtmlElementCollection.cs
- Clipboard.cs
- GroupAggregateExpr.cs
- Quad.cs
- CodeArgumentReferenceExpression.cs
- FileLogRecord.cs
- ConfigurationManagerHelperFactory.cs
- ImageDrawing.cs
- DependencySource.cs
- ButtonRenderer.cs
- MultiView.cs
- ConnectionsZone.cs
- EntityDataSourceState.cs
- StrokeCollection.cs
- DBCSCodePageEncoding.cs