Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / ContextMenuStripActionList.cs / 1 / ContextMenuStripActionList.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms.Design { using System.Design; using System.Runtime.InteropServices; using System.ComponentModel; using System.Diagnostics; using System; using System.Security; using System.Security.Permissions; using System.Collections; using System.ComponentModel.Design; using System.Windows.Forms; ///internal class ContextMenuStripActionList : DesignerActionList { private ToolStripDropDown _toolStripDropDown; private bool _autoShow = false; /// public ContextMenuStripActionList(ToolStripDropDownDesigner designer) : base (designer.Component) { _toolStripDropDown = (ToolStripDropDown)designer.Component; } //helper function to get the property on the actual Control private object GetProperty(string propertyName) { PropertyDescriptor getProperty = TypeDescriptor.GetProperties(_toolStripDropDown)[propertyName]; Debug.Assert( getProperty != null, "Could not find given property in control."); if( getProperty != null ) { return getProperty.GetValue(_toolStripDropDown); } return null; } //helper function to change the property on the actual Control private void ChangeProperty(string propertyName, object value) { PropertyDescriptor changingProperty = TypeDescriptor.GetProperties(_toolStripDropDown)[propertyName]; Debug.Assert( changingProperty != null, "Could not find given property in control." ); if( changingProperty != null ) { changingProperty.SetValue(_toolStripDropDown, value); } } /// /// /// Controls whether the Chrome is Automatically shown on selection /// public override bool AutoShow { get { return _autoShow; } set { if(_autoShow != value) { _autoShow = value; } } } ////// /// Sets ShowImageMargin /// public bool ShowImageMargin { get { return (bool)GetProperty("ShowImageMargin"); } set { if (value != ShowImageMargin) { ChangeProperty("ShowImageMargin", (object)value); } } } ////// /// Sets ShowCheckMargin /// public bool ShowCheckMargin { get { return (bool)GetProperty("ShowCheckMargin"); } set { if (value != ShowCheckMargin) { ChangeProperty("ShowCheckMargin", (object)value); } } } ////// /// Sets RenderMode /// public ToolStripRenderMode RenderMode { get { return (ToolStripRenderMode)GetProperty("RenderMode"); } set { if (value != RenderMode) { ChangeProperty("RenderMode", (object)value); } } } ////// /// The Main method to group the ActionItems and pass it to the Panel. /// public override DesignerActionItemCollection GetSortedActionItems() { DesignerActionItemCollection items = new DesignerActionItemCollection(); items.Add(new DesignerActionPropertyItem(SR.GetString(SR.ToolStripActionList_RenderMode), SR.GetString(SR.ToolStripActionList_RenderMode), SR.GetString(SR.ToolStripActionList_Layout), SR.GetString(SR.ToolStripActionList_RenderModeDesc))); if (_toolStripDropDown is ToolStripDropDownMenu) { items.Add(new DesignerActionPropertyItem(SR.GetString(SR.ContextMenuStripActionList_ShowImageMargin), SR.GetString(SR.ContextMenuStripActionList_ShowImageMargin), SR.GetString(SR.ToolStripActionList_Layout), SR.GetString(SR.ContextMenuStripActionList_ShowImageMarginDesc))); items.Add(new DesignerActionPropertyItem(SR.GetString(SR.ContextMenuStripActionList_ShowCheckMargin), SR.GetString(SR.ContextMenuStripActionList_ShowCheckMargin), SR.GetString(SR.ToolStripActionList_Layout), SR.GetString(SR.ContextMenuStripActionList_ShowCheckMarginDesc))); } return items; } } } // 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
- VectorAnimationUsingKeyFrames.cs
- EnumBuilder.cs
- Win32Exception.cs
- RuntimeArgumentHandle.cs
- DispatcherFrame.cs
- HttpResponseInternalWrapper.cs
- RefreshPropertiesAttribute.cs
- SelectionProcessor.cs
- RSAOAEPKeyExchangeFormatter.cs
- OdbcReferenceCollection.cs
- ContentPathSegment.cs
- DataGridViewCellMouseEventArgs.cs
- ProxyElement.cs
- Grid.cs
- ProviderMetadata.cs
- SolidColorBrush.cs
- GACMembershipCondition.cs
- WebPartConnectionsConnectVerb.cs
- DataGridViewCellPaintingEventArgs.cs
- BaseTreeIterator.cs
- SortDescription.cs
- DispatcherHookEventArgs.cs
- DataServiceKeyAttribute.cs
- ControlLocalizer.cs
- CngAlgorithmGroup.cs
- TypographyProperties.cs
- CollectionDataContractAttribute.cs
- OdbcEnvironmentHandle.cs
- DataPager.cs
- PriorityBindingExpression.cs
- StatusBar.cs
- GatewayIPAddressInformationCollection.cs
- OleDbException.cs
- URLIdentityPermission.cs
- StateWorkerRequest.cs
- SchemaElement.cs
- HtmlLink.cs
- TransportElement.cs
- OptimizerPatterns.cs
- RtfToXamlReader.cs
- Attributes.cs
- ResourceSetExpression.cs
- OdbcStatementHandle.cs
- SystemParameters.cs
- EntryIndex.cs
- Application.cs
- RootContext.cs
- ScrollEvent.cs
- OleDbErrorCollection.cs
- EventPropertyMap.cs
- TabControlAutomationPeer.cs
- DbDataReader.cs
- QueryAccessibilityHelpEvent.cs
- TokenBasedSetEnumerator.cs
- PointCollectionValueSerializer.cs
- DocumentViewerBaseAutomationPeer.cs
- GetReadStreamResult.cs
- DeviceSpecific.cs
- FigureParaClient.cs
- XmlSchemaValidationException.cs
- NamespaceList.cs
- CursorConverter.cs
- OperationContractGenerationContext.cs
- ProvidePropertyAttribute.cs
- InputScopeManager.cs
- PartialClassGenerationTask.cs
- DBSqlParserColumnCollection.cs
- GacUtil.cs
- CurrentChangedEventManager.cs
- CodeObject.cs
- ReadOnlyCollectionBase.cs
- ValueConversionAttribute.cs
- DefaultHttpHandler.cs
- SafeCertificateContext.cs
- SmtpNetworkElement.cs
- CheckedPointers.cs
- TryExpression.cs
- Animatable.cs
- DataPagerFieldCollection.cs
- Transform3DGroup.cs
- DbDataAdapter.cs
- VBIdentifierTrimConverter.cs
- ValidationHelper.cs
- MenuItemBindingCollection.cs
- QilSortKey.cs
- ProgressBarBrushConverter.cs
- ToolBarButton.cs
- ZoneLinkButton.cs
- TextParagraphProperties.cs
- _HeaderInfoTable.cs
- ReservationNotFoundException.cs
- HttpConfigurationSystem.cs
- GifBitmapDecoder.cs
- TreeNodeStyle.cs
- BehaviorService.cs
- SystemColors.cs
- CodeBlockBuilder.cs
- RequestBringIntoViewEventArgs.cs
- CodeTypeOfExpression.cs
- UnmanagedHandle.cs