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
- SafeThemeHandle.cs
- DataView.cs
- WriteTimeStream.cs
- AcceleratedTokenAuthenticator.cs
- TextProperties.cs
- Helper.cs
- DecoderFallback.cs
- MonthChangedEventArgs.cs
- CharEnumerator.cs
- DocumentGridContextMenu.cs
- PointF.cs
- MediaSystem.cs
- DeobfuscatingStream.cs
- ControlAdapter.cs
- DependencyProperty.cs
- HttpModuleCollection.cs
- FixedFlowMap.cs
- XslAst.cs
- MetabaseServerConfig.cs
- HandleCollector.cs
- CatalogPartCollection.cs
- SamlAudienceRestrictionCondition.cs
- OleDbRowUpdatedEvent.cs
- MasterPage.cs
- SoapExtensionTypeElementCollection.cs
- CompareValidator.cs
- WindowsRegion.cs
- CommonObjectSecurity.cs
- TypeDescriptorContext.cs
- ReferentialConstraintRoleElement.cs
- OptionalMessageQuery.cs
- AnnotationStore.cs
- DetailsViewDeleteEventArgs.cs
- Page.cs
- CorePropertiesFilter.cs
- TextParentUndoUnit.cs
- HttpCapabilitiesBase.cs
- DropDownButton.cs
- WebEventTraceProvider.cs
- GeometryCombineModeValidation.cs
- DecimalConverter.cs
- DocumentGrid.cs
- RsaEndpointIdentity.cs
- HiddenField.cs
- XsltSettings.cs
- DeferredReference.cs
- SettingsPropertyWrongTypeException.cs
- WebServiceHandlerFactory.cs
- RTLAwareMessageBox.cs
- GridViewColumnCollectionChangedEventArgs.cs
- SqlBuffer.cs
- TextBoxBase.cs
- BulletDecorator.cs
- VSWCFServiceContractGenerator.cs
- OutgoingWebResponseContext.cs
- WindowCollection.cs
- Random.cs
- ObjectReferenceStack.cs
- SafeNativeMethodsMilCoreApi.cs
- ByteStorage.cs
- MD5.cs
- UrlMappingsModule.cs
- GlobalizationSection.cs
- BaseCodePageEncoding.cs
- WebPartDeleteVerb.cs
- CodeGotoStatement.cs
- PictureBox.cs
- RawStylusActions.cs
- SettingsPropertyWrongTypeException.cs
- ErrorProvider.cs
- ToolStripPanelCell.cs
- FormViewModeEventArgs.cs
- InternalsVisibleToAttribute.cs
- Util.cs
- PackUriHelper.cs
- GetMemberBinder.cs
- XmlProcessingInstruction.cs
- ColorMatrix.cs
- OleDbParameter.cs
- SByteConverter.cs
- ScopelessEnumAttribute.cs
- DocumentReference.cs
- WebPartCatalogCloseVerb.cs
- ADRoleFactory.cs
- AnnotationComponentChooser.cs
- GeneralTransform2DTo3D.cs
- TextWriter.cs
- WmiEventSink.cs
- LabelAutomationPeer.cs
- WindowsEditBoxRange.cs
- ArrayTypeMismatchException.cs
- XmlNamedNodeMap.cs
- CustomSignedXml.cs
- TrustLevelCollection.cs
- Char.cs
- SafeNativeMethods.cs
- SmtpMail.cs
- WebPartRestoreVerb.cs
- WeakReferenceEnumerator.cs
- FileLogRecord.cs