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
- ExtenderProviderService.cs
- ConvertTextFrag.cs
- UnauthorizedAccessException.cs
- CancellationTokenSource.cs
- AutoGeneratedFieldProperties.cs
- CompositeCollection.cs
- AssemblyCache.cs
- PerformanceCounterManager.cs
- ClientBuildManagerCallback.cs
- ComplexPropertyEntry.cs
- X509IssuerSerialKeyIdentifierClause.cs
- TextServicesCompartmentContext.cs
- Number.cs
- XmlIgnoreAttribute.cs
- OleDbRowUpdatingEvent.cs
- DatagridviewDisplayedBandsData.cs
- FixedTextPointer.cs
- SerializerDescriptor.cs
- PerformanceCounterPermissionAttribute.cs
- PathStreamGeometryContext.cs
- ExpressionConverter.cs
- SqlIdentifier.cs
- VectorConverter.cs
- MetadataItemCollectionFactory.cs
- SEHException.cs
- SoapElementAttribute.cs
- DataGridViewRowContextMenuStripNeededEventArgs.cs
- DBConnectionString.cs
- Transform.cs
- UrlPropertyAttribute.cs
- SessionPageStateSection.cs
- TdsParserSafeHandles.cs
- MetricEntry.cs
- AppDomainUnloadedException.cs
- WebDisplayNameAttribute.cs
- CircleHotSpot.cs
- Hashtable.cs
- RawTextInputReport.cs
- DataBindingHandlerAttribute.cs
- ScrollData.cs
- ConfigurationSectionCollection.cs
- HtmlTitle.cs
- RegionData.cs
- ProjectionPruner.cs
- ListItemCollection.cs
- CharAnimationUsingKeyFrames.cs
- RelatedCurrencyManager.cs
- OpenTypeLayout.cs
- MbpInfo.cs
- FormatterConverter.cs
- FileUpload.cs
- StrokeNodeData.cs
- SQLBinaryStorage.cs
- DynamicDiscoveryDocument.cs
- XmlChoiceIdentifierAttribute.cs
- CriticalExceptions.cs
- DeviceSpecificChoice.cs
- SrgsRule.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- CdpEqualityComparer.cs
- QueryInterceptorAttribute.cs
- ObjectConverter.cs
- AxHost.cs
- CookieProtection.cs
- UpdateCommand.cs
- Dump.cs
- AnnotationResource.cs
- AlignmentYValidation.cs
- ByteAnimationBase.cs
- RenderContext.cs
- RootCodeDomSerializer.cs
- MessageContractExporter.cs
- ElementHost.cs
- DomainConstraint.cs
- IndependentAnimationStorage.cs
- SplineKeyFrames.cs
- ScrollEventArgs.cs
- FileVersion.cs
- TransformCollection.cs
- ListComponentEditor.cs
- IssuerInformation.cs
- DataColumnChangeEvent.cs
- SmtpNetworkElement.cs
- HtmlElementEventArgs.cs
- DataBinder.cs
- StringValueSerializer.cs
- UserNameSecurityToken.cs
- StateMachineSubscriptionManager.cs
- WebPartTransformer.cs
- PropertyBuilder.cs
- ProxyWebPartConnectionCollection.cs
- StorageMappingItemLoader.cs
- HiddenFieldDesigner.cs
- TableCellAutomationPeer.cs
- ControlDesigner.cs
- XXXOnTypeBuilderInstantiation.cs
- XmlSchemaExporter.cs
- Page.cs
- StorageEntityContainerMapping.cs
- DataSourceSerializationException.cs