using System;
using System.Drawing;
using System.Windows.Forms;
public class TextBoxContextMenuDemo : Form
{
public TextBoxContextMenuDemo()
{
InitializeComponent();
ContextMenu mnuContext = new ContextMenu();
foreach (MenuItem mnuItem in mnuFile.MenuItems)
{
mnuContext.MenuItems.Add(mnuItem.CloneMenu());
}
TextBox1.ContextMenu = mnuContext;
}
private void TextBox1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
TextBox1.ContextMenu.Show(TextBox1, new Point(e.X, e.Y));
}
}
private void mnuOpen_Click(object sender, EventArgs e)
{
MessageBox.Show("This is the event handler for Open.","TextBoxContextMenuDemo");
}
private void mnuSave_Click(object sender, EventArgs e)
{
MessageBox.Show("This is the event handler for Save.","TextBoxContextMenuDemo");
}
private void mnuExit_Click(object sender, EventArgs e)
{
MessageBox.Show("This is the event handler for Exit.","TextBoxContextMenuDemo");
}
[STAThread]
public static void Main(string[] args)
{
Application.Run(new TextBoxContextMenuDemo());
}
private System.Windows.Forms.MainMenu MainMenu1;
private System.Windows.Forms.MenuItem mnuFile;
private System.Windows.Forms.MenuItem mnuOpen;
private System.Windows.Forms.MenuItem mnuSave;
private System.Windows.Forms.MenuItem mnuExit;
private System.Windows.Forms.MenuItem MenuItem5;
private System.Windows.Forms.MenuItem MenuItem6;
private System.Windows.Forms.MenuItem MenuItem7;
private System.Windows.Forms.MenuItem MenuItem8;
private System.Windows.Forms.TextBox TextBox1;
private System.ComponentModel.IContainer components = null;
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.MainMenu1 = new System.Windows.Forms.MainMenu(this.components);
this.mnuFile = new System.Windows.Forms.MenuItem();
this.mnuOpen = new System.Windows.Forms.MenuItem();
this.mnuSave = new System.Windows.Forms.MenuItem();
this.mnuExit = new System.Windows.Forms.MenuItem();
this.MenuItem5 = new System.Windows.Forms.MenuItem();
this.MenuItem6 = new System.Windows.Forms.MenuItem();
this.MenuItem7 = new System.Windows.Forms.MenuItem();
this.MenuItem8 = new System.Windows.Forms.MenuItem();
this.TextBox1 = new System.Windows.Forms.TextBox();
this.SuspendLayout();
//
// MainMenu1
//
this.MainMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
this.mnuFile,
this.MenuItem5});
//
// mnuFile
//
this.mnuFile.Index = 0;
this.mnuFile.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
this.mnuOpen,
this.mnuSave,
this.mnuExit});
this.mnuFile.Text = "File";
//
// mnuOpen
//
this.mnuOpen.Index = 0;
this.mnuOpen.Text = "Open";
this.mnuOpen.Click += new System.EventHandler(this.mnuOpen_Click);
//
// mnuSave
//
this.mnuSave.Index = 1;
this.mnuSave.Text = "Save";
this.mnuSave.Click += new System.EventHandler(this.mnuSave_Click);
//
// mnuExit
//
this.mnuExit.Index = 2;
this.mnuExit.Text = "Exit";
this.mnuExit.Click += new System.EventHandler(this.mnuExit_Click);
//
// MenuItem5
//
this.MenuItem5.Index = 1;
this.MenuItem5.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
this.MenuItem6,
this.MenuItem7,
this.MenuItem8});
this.MenuItem5.Text = "Edit";
//
// MenuItem6
//
this.MenuItem6.Index = 0;
this.MenuItem6.Text = "Cut";
//
// MenuItem7
//
this.MenuItem7.Index = 1;
this.MenuItem7.Text = "Copy";
//
// MenuItem8
//
this.MenuItem8.Index = 2;
this.MenuItem8.Text = "Paste";
//
// TextBox1
//
this.TextBox1.Location = new System.Drawing.Point(44, 56);
this.TextBox1.Multiline = true;
this.TextBox1.Name = "TextBox1";
this.TextBox1.Size = new System.Drawing.Size(180, 88);
this.TextBox1.TabIndex = 1;
this.TextBox1.Text = "Right click here to view the cloned context menu.";
this.TextBox1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.TextBox1_MouseDown);
//
// TextBoxContextMenuDemo
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(292, 266);
this.Controls.Add(this.TextBox1);
this.Menu = this.MainMenu1;
this.ResumeLayout(false);
this.PerformLayout();
}
}
23.40.ContextMenu Popup Menu |
| 23.40.1. | Form popup menu | |
| 23.40.2. | Add ContextMenu to TextBox | |