Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / RichTextBoxContextMenu.cs / 1 / RichTextBoxContextMenu.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode", Scope="member", Target="System.Windows.Forms.Design.RichTextBoxContextMenu..ctor()")] namespace System.Windows.Forms.Design { using Microsoft.Win32; using System; using System.Design; using System.ComponentModel; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.Drawing; using System.Windows.Forms; ////// Context menu for the RichTextBox control /// We only allow copy/cut/paste of texts /// internal class RichTextBoxContextMenu : ContextMenu { private MenuItem undoMenu; private MenuItem cutMenu; private MenuItem copyMenu; private MenuItem pasteMenu; private MenuItem deleteMenu; private MenuItem selectAllMenu; private RichTextBox parent; //the RichTextBox which hosts this context menu [SuppressMessage("Microsoft.Globalization", "CA1303:DoNotPassLiteralsAsLocalizedParameters")] public RichTextBoxContextMenu(RichTextBox parent) : base() { undoMenu = new MenuItem(SR.GetString(SR.StandardMenuUndo), new EventHandler(undoMenu_Clicked)); cutMenu = new MenuItem(SR.GetString(SR.StandardMenuCut), new EventHandler(cutMenu_Clicked)); copyMenu = new MenuItem(SR.GetString(SR.StandardMenuCopy), new EventHandler(copyMenu_Clicked)); pasteMenu = new MenuItem(SR.GetString(SR.StandardMenuPaste), new EventHandler(pasteMenu_Clicked)); deleteMenu = new MenuItem(SR.GetString(SR.StandardMenuDelete), new EventHandler(deleteMenu_Clicked)); selectAllMenu = new MenuItem(SR.GetString(SR.StandardMenuSelectAll), new EventHandler(selectAllMenu_Clicked)); MenuItem splitter1 = new MenuItem("-"); MenuItem splitter2 = new MenuItem("-"); this.MenuItems.Add(undoMenu); this.MenuItems.Add(splitter1); this.MenuItems.Add(cutMenu); this.MenuItems.Add(copyMenu); this.MenuItems.Add(pasteMenu); this.MenuItems.Add(deleteMenu); this.MenuItems.Add(splitter2); this.MenuItems.Add(selectAllMenu); this.parent = parent; } ////// Set the appropriate visibility of the menu items /// protected override void OnPopup(EventArgs e) { if (parent.SelectionLength > 0) { cutMenu.Enabled = true; copyMenu.Enabled = true; deleteMenu.Enabled = true; } else { cutMenu.Enabled = false; copyMenu.Enabled = false; deleteMenu.Enabled = false; } if (Clipboard.GetText() != null) { pasteMenu.Enabled = true; } else { pasteMenu.Enabled = false; } if (parent.CanUndo) { undoMenu.Enabled = true; } else { undoMenu.Enabled = false; } } private void cutMenu_Clicked(object sender, EventArgs e) { Clipboard.SetText(parent.SelectedText); parent.SelectedText = ""; } private void copyMenu_Clicked(object sender, EventArgs e) { Clipboard.SetText(parent.SelectedText); } private void deleteMenu_Clicked(object sender, EventArgs e) { parent.SelectedText = ""; } private void pasteMenu_Clicked(object sender, EventArgs e) { parent.SelectedText = Clipboard.GetText(); } private void selectAllMenu_Clicked(object sender, EventArgs e) { parent.SelectAll(); } private void undoMenu_Clicked(object sender, EventArgs e) { parent.Undo(); } } } // 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
- Object.cs
- AccessorTable.cs
- TextTreeInsertElementUndoUnit.cs
- LinqDataSourceSelectEventArgs.cs
- WebPartZoneDesigner.cs
- IApplicationTrustManager.cs
- Paragraph.cs
- MessageEnumerator.cs
- XmlCharCheckingWriter.cs
- TransformConverter.cs
- XmlDataSourceNodeDescriptor.cs
- DragDrop.cs
- KeyboardEventArgs.cs
- AnimationLayer.cs
- ProfileSettings.cs
- EntityViewContainer.cs
- Stack.cs
- LinkedResource.cs
- EntityDescriptor.cs
- UnsafeNativeMethodsPenimc.cs
- AlphaSortedEnumConverter.cs
- newinstructionaction.cs
- WebSysDisplayNameAttribute.cs
- WebPartMovingEventArgs.cs
- PartialTrustHelpers.cs
- PointCollection.cs
- MeasurementDCInfo.cs
- Model3D.cs
- DelayedRegex.cs
- HitTestFilterBehavior.cs
- ToolStripDropDownButton.cs
- TextStore.cs
- SchemaSetCompiler.cs
- ActivityCodeGenerator.cs
- TdsRecordBufferSetter.cs
- ConnectionConsumerAttribute.cs
- ListViewItemMouseHoverEvent.cs
- ManagementClass.cs
- WorkflowView.cs
- ZipIOLocalFileHeader.cs
- DbConvert.cs
- PointLight.cs
- Int32KeyFrameCollection.cs
- XmlSecureResolver.cs
- KeyboardEventArgs.cs
- Menu.cs
- CalendarDateChangedEventArgs.cs
- GridView.cs
- XPathSingletonIterator.cs
- RoutingBehavior.cs
- DecimalSumAggregationOperator.cs
- ProtectedProviderSettings.cs
- ProfileService.cs
- HttpModuleAction.cs
- UrlAuthorizationModule.cs
- StreamHelper.cs
- StatusCommandUI.cs
- TransformCollection.cs
- EntitySetDataBindingList.cs
- basemetadatamappingvisitor.cs
- LiteralTextParser.cs
- HttpContextServiceHost.cs
- QueueProcessor.cs
- Evidence.cs
- Header.cs
- StylusPlugInCollection.cs
- DialogWindow.cs
- DiscoveryDocument.cs
- SmiGettersStream.cs
- DefaultValueConverter.cs
- TcpAppDomainProtocolHandler.cs
- InternalConfigEventArgs.cs
- Matrix3DStack.cs
- BookmarkInfo.cs
- EventLogPermissionEntry.cs
- DateTimeFormat.cs
- AssemblyAttributesGoHere.cs
- ReflectEventDescriptor.cs
- DataGridAutomationPeer.cs
- ListMarkerSourceInfo.cs
- GeneralTransform3D.cs
- SqlClientWrapperSmiStream.cs
- ConvertEvent.cs
- MergeLocalizationDirectives.cs
- SectionRecord.cs
- FormatVersion.cs
- ClientType.cs
- CustomErrorCollection.cs
- HeaderedItemsControl.cs
- TdsRecordBufferSetter.cs
- SimpleHandlerFactory.cs
- SecurityManager.cs
- ResolveInfo.cs
- CharAnimationUsingKeyFrames.cs
- XmlEntity.cs
- TaskFileService.cs
- WmlValidatorAdapter.cs
- TypeProvider.cs
- TextBoxBase.cs
- UserInitiatedNavigationPermission.cs