Code:
/ FX-1434 / FX-1434 / 1.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
- DbgCompiler.cs
- Authorization.cs
- FullTextBreakpoint.cs
- DependencyPropertyChangedEventArgs.cs
- FixedSOMLineRanges.cs
- ScriptResourceDefinition.cs
- ConnectionPoint.cs
- RsaSecurityToken.cs
- UnknownBitmapEncoder.cs
- Path.cs
- MemberNameValidator.cs
- DocumentXPathNavigator.cs
- SqlConnection.cs
- HtmlTableRowCollection.cs
- SymbolMethod.cs
- RequestCachingSection.cs
- ComboBox.cs
- DesignerActionHeaderItem.cs
- DecoderNLS.cs
- XmlHelper.cs
- Resources.Designer.cs
- FileLogRecordHeader.cs
- SQLDoubleStorage.cs
- SpeechRecognizer.cs
- CipherData.cs
- ImagingCache.cs
- SafeWaitHandle.cs
- FontFamilyIdentifier.cs
- AssemblyBuilderData.cs
- LinqDataSource.cs
- SkinBuilder.cs
- ChangePassword.cs
- ExpressionBinding.cs
- ReadOnlyObservableCollection.cs
- xamlnodes.cs
- AmbientValueAttribute.cs
- Icon.cs
- SafeSecurityHandles.cs
- BasicExpandProvider.cs
- IndependentlyAnimatedPropertyMetadata.cs
- ToolStripGripRenderEventArgs.cs
- InvalidAsynchronousStateException.cs
- XsltException.cs
- StrokeIntersection.cs
- PaginationProgressEventArgs.cs
- InvalidTimeZoneException.cs
- XmlUtil.cs
- ObjectStateManager.cs
- IListConverters.cs
- RemoteWebConfigurationHost.cs
- TypeReference.cs
- FloaterBaseParaClient.cs
- QueryableFilterUserControl.cs
- WebPartAddingEventArgs.cs
- XmlSchemaProviderAttribute.cs
- EntityExpressionVisitor.cs
- WebControlAdapter.cs
- LineServicesCallbacks.cs
- Trace.cs
- StreamSecurityUpgradeAcceptorAsyncResult.cs
- WebPartHeaderCloseVerb.cs
- IRCollection.cs
- XmlQueryType.cs
- SqlErrorCollection.cs
- StaticTextPointer.cs
- FakeModelItemImpl.cs
- ASCIIEncoding.cs
- counter.cs
- ReferenceAssemblyAttribute.cs
- EventSourceCreationData.cs
- VisualProxy.cs
- DataFormats.cs
- CachedCompositeFamily.cs
- SwitchElementsCollection.cs
- PresentationSource.cs
- ServiceKnownTypeAttribute.cs
- SqlBuffer.cs
- ValidationErrorEventArgs.cs
- WindowsListView.cs
- DataServices.cs
- ExpressionNormalizer.cs
- ToolStripControlHost.cs
- WorkerRequest.cs
- FollowerQueueCreator.cs
- wgx_render.cs
- IncrementalCompileAnalyzer.cs
- BooleanFunctions.cs
- AccessDataSourceView.cs
- UIElement.cs
- UriWriter.cs
- LockedHandleGlyph.cs
- Stack.cs
- ControlAdapter.cs
- SweepDirectionValidation.cs
- UseManagedPresentationBindingElementImporter.cs
- HyperlinkAutomationPeer.cs
- EntityCommand.cs
- RubberbandSelector.cs
- ManagedFilter.cs
- XmlSchemaInferenceException.cs