Code:
/ FX-1434 / FX-1434 / 1.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
- FixedFindEngine.cs
- ScriptRef.cs
- FormatVersion.cs
- DataKey.cs
- DataGridColumn.cs
- FrameworkTextComposition.cs
- TripleDES.cs
- DataTableCollection.cs
- CodeCatchClause.cs
- InputScope.cs
- ReferencedAssembly.cs
- DataControlFieldCell.cs
- GenericIdentity.cs
- AbstractSvcMapFileLoader.cs
- X509CertificateClaimSet.cs
- RuntimeArgument.cs
- Transform.cs
- TemplateAction.cs
- AdapterDictionary.cs
- XmlEventCache.cs
- assemblycache.cs
- InternalConfigEventArgs.cs
- HttpModulesSection.cs
- WindowsFormsHost.cs
- AxDesigner.cs
- IRCollection.cs
- SqlProviderManifest.cs
- HttpCookieCollection.cs
- PasswordTextNavigator.cs
- HashCodeCombiner.cs
- TextEndOfLine.cs
- XmlConverter.cs
- DocumentsTrace.cs
- EventLog.cs
- DynamicQueryStringParameter.cs
- CheckBox.cs
- SecurityDescriptor.cs
- CollectionBuilder.cs
- ToolStripDropDownItem.cs
- Utils.cs
- ClassValidator.cs
- Selection.cs
- M3DUtil.cs
- Int32Storage.cs
- TableItemStyle.cs
- NonParentingControl.cs
- ConfigurationErrorsException.cs
- GenericAuthenticationEventArgs.cs
- InternalRelationshipCollection.cs
- UriTemplateVariableQueryValue.cs
- CommandField.cs
- FixedSchema.cs
- DataSourceHelper.cs
- SecurityUtils.cs
- Rect3DConverter.cs
- TimelineCollection.cs
- WebRequestModuleElement.cs
- ExpanderAutomationPeer.cs
- DataGridColumnCollection.cs
- DataTrigger.cs
- FileSystemEventArgs.cs
- RotateTransform3D.cs
- FontNameEditor.cs
- CleanUpVirtualizedItemEventArgs.cs
- Clipboard.cs
- ExternalFile.cs
- TextAnchor.cs
- Point4D.cs
- EventLogEntry.cs
- GroupDescription.cs
- TransformValueSerializer.cs
- TraceSection.cs
- ComProxy.cs
- CollectionChangeEventArgs.cs
- SelectionChangedEventArgs.cs
- SecurityUtils.cs
- X509UI.cs
- BinaryConverter.cs
- ContextMenu.cs
- Baml2006ReaderSettings.cs
- SQLRoleProvider.cs
- CollectionEditorDialog.cs
- TrackingMemoryStream.cs
- FixedPageAutomationPeer.cs
- PseudoWebRequest.cs
- LayoutManager.cs
- NopReturnReader.cs
- CodeNamespaceImportCollection.cs
- Console.cs
- SharedPerformanceCounter.cs
- DetailsViewAutoFormat.cs
- HttpStaticObjectsCollectionBase.cs
- ProgressPage.cs
- MessageSmuggler.cs
- CodeAccessSecurityEngine.cs
- ImageIndexConverter.cs
- ConfigurationConverterBase.cs
- DbConnectionPoolIdentity.cs
- XmlElementCollection.cs