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
- MetabaseSettingsIis7.cs
- ValueQuery.cs
- QuadraticBezierSegment.cs
- XmlIlVisitor.cs
- FixedTextView.cs
- VisualTreeHelper.cs
- StreamingContext.cs
- OptimalTextSource.cs
- X509ClientCertificateCredentialsElement.cs
- OdbcStatementHandle.cs
- SubstitutionList.cs
- PrincipalPermission.cs
- BStrWrapper.cs
- ActiveXSite.cs
- ScalarOps.cs
- ActionNotSupportedException.cs
- GenericWebPart.cs
- ControlBuilderAttribute.cs
- Relationship.cs
- SqlTypeSystemProvider.cs
- ZipIOLocalFileHeader.cs
- NativeMethods.cs
- SemaphoreFullException.cs
- XPathDocument.cs
- CounterSample.cs
- DataObjectPastingEventArgs.cs
- ConfigXmlText.cs
- GridViewRowCollection.cs
- EventLogLink.cs
- ReferenceConverter.cs
- XmlNodeList.cs
- ProfileSettings.cs
- ResourceExpressionBuilder.cs
- ObjectQueryState.cs
- SqlResolver.cs
- srgsitem.cs
- WindowsListBox.cs
- SetterBase.cs
- TablePattern.cs
- MemberHolder.cs
- AddInPipelineAttributes.cs
- ValueQuery.cs
- Propagator.JoinPropagator.SubstitutingCloneVisitor.cs
- PerfCounterSection.cs
- UpdatePanelTrigger.cs
- FixedSOMPage.cs
- DropShadowEffect.cs
- GridViewCommandEventArgs.cs
- ExpressionEvaluator.cs
- StateItem.cs
- DispatcherExceptionFilterEventArgs.cs
- ExceptionValidationRule.cs
- PropertyMap.cs
- Regex.cs
- HorizontalAlignConverter.cs
- GroupStyle.cs
- EventProvider.cs
- Win32Native.cs
- FileDataSourceCache.cs
- SelectionProviderWrapper.cs
- MenuCommand.cs
- BufferedGraphicsManager.cs
- DbConnectionFactory.cs
- SystemFonts.cs
- WmlObjectListAdapter.cs
- Button.cs
- DynamicMethod.cs
- TransactionTraceIdentifier.cs
- ApplicationProxyInternal.cs
- SymLanguageType.cs
- Run.cs
- StreamAsIStream.cs
- XmlCDATASection.cs
- AppAction.cs
- odbcmetadatafactory.cs
- CookieParameter.cs
- ParallelSeparator.xaml.cs
- CodeSnippetCompileUnit.cs
- RsaSecurityKey.cs
- SimpleBitVector32.cs
- RunClient.cs
- NullableDoubleSumAggregationOperator.cs
- PrivilegeNotHeldException.cs
- JournalEntry.cs
- SpellerHighlightLayer.cs
- Math.cs
- AlgoModule.cs
- StdValidatorsAndConverters.cs
- SqlFormatter.cs
- DataGridViewCellStyle.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- DataColumnPropertyDescriptor.cs
- EntitySqlQueryCacheKey.cs
- TextEditorMouse.cs
- ByteStreamGeometryContext.cs
- TextEditorThreadLocalStore.cs
- Completion.cs
- FullTrustAssemblyCollection.cs
- FileInfo.cs
- SerializerDescriptor.cs