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
- DescendentsWalker.cs
- ToolStripStatusLabel.cs
- RotateTransform.cs
- ShellProvider.cs
- CompilationUtil.cs
- DefinitionUpdate.cs
- SymbolPair.cs
- Vector3DCollectionValueSerializer.cs
- SrgsRulesCollection.cs
- RuleAction.cs
- ObjectNotFoundException.cs
- SqlCharStream.cs
- Lasso.cs
- ExtentKey.cs
- CompilationLock.cs
- ScrollBarRenderer.cs
- NamespaceDecl.cs
- FastEncoder.cs
- DataGridViewLinkCell.cs
- PhysicalFontFamily.cs
- X509CertificateTrustedIssuerElement.cs
- NumberSubstitution.cs
- GridPattern.cs
- BlockCollection.cs
- SiteMap.cs
- ReadOnlyMetadataCollection.cs
- StackOverflowException.cs
- DataObject.cs
- SqlExpander.cs
- _StreamFramer.cs
- ArrayHelper.cs
- TrackingQueryElement.cs
- TextPointerBase.cs
- TextWriterTraceListener.cs
- WorkerRequest.cs
- CodeArrayCreateExpression.cs
- Camera.cs
- StyleBamlTreeBuilder.cs
- NewArrayExpression.cs
- ProgressiveCrcCalculatingStream.cs
- Line.cs
- FrameAutomationPeer.cs
- RuleElement.cs
- DataGridViewCellStyleEditor.cs
- securitycriticaldata.cs
- wmiprovider.cs
- PropVariant.cs
- RijndaelManaged.cs
- HostedTcpTransportManager.cs
- XsdBuilder.cs
- SizeAnimationUsingKeyFrames.cs
- DbgUtil.cs
- HighlightComponent.cs
- DataObjectEventArgs.cs
- SvcMapFileSerializer.cs
- ManagementScope.cs
- ServiceHttpHandlerFactory.cs
- MatrixValueSerializer.cs
- InkCanvasSelection.cs
- ContentPlaceHolder.cs
- MappingModelBuildProvider.cs
- CompilerInfo.cs
- WinInetCache.cs
- DBCommandBuilder.cs
- EtwProvider.cs
- FloaterBaseParaClient.cs
- EdmToObjectNamespaceMap.cs
- BinaryObjectInfo.cs
- WorkflowDesignerColors.cs
- ListCollectionView.cs
- IPGlobalProperties.cs
- XsltContext.cs
- RegexNode.cs
- HttpStaticObjectsCollectionBase.cs
- OperandQuery.cs
- PageAdapter.cs
- ReaderContextStackData.cs
- SqlSelectStatement.cs
- SkinBuilder.cs
- BasicKeyConstraint.cs
- DataConnectionHelper.cs
- SystemColors.cs
- ConsoleKeyInfo.cs
- RemoteHelper.cs
- MenuEventArgs.cs
- UnsafeNativeMethods.cs
- SoapProtocolImporter.cs
- Rethrow.cs
- EventSource.cs
- ClockController.cs
- MsmqIntegrationMessagePool.cs
- Highlights.cs
- HostedImpersonationContext.cs
- TypeConverterBase.cs
- ConstrainedDataObject.cs
- SqlCachedBuffer.cs
- LocalValueEnumerator.cs
- PingReply.cs
- DataGridHeaderBorder.cs
- CursorInteropHelper.cs