欢迎来到忆约科技! 手机版
C#
网络探索
科技频道
社会话题
美文鉴赏

Winform 自定义控件的右键菜单, 右键菜单ContextMenuStrip

编辑时间:2017年08月29日 17:53 作者:E小编

Winform 自定义控件的右键菜单, 右键菜单ContextMenuStrip
using System;
using System.Drawing;
using System.Windows.Forms;

namespace WindowsFormsApp12
{
    public partial class Form1 : Form
    {
        private TextBox textBox1;
        private CustomContextMenuStrip customContextMenuStrip1;
        public Form1()
        {
            InitializeComponent();

            this.customContextMenuStrip1 = new CustomContextMenuStrip();
            this.textBox1 = new TextBox();

            this.textBox1.ContextMenuStrip = this.customContextMenuStrip1;
            this.textBox1.Location = new Point(200, 200);
            this.textBox1.Text = "右键文本框";

            this.Controls.Add(this.textBox1);
        }
    }

    /// <summary>
    /// 自定义控件的右键菜单
    /// </summary>
    public class CustomContextMenuStrip : ContextMenuStrip
    {
        /// <summary>
        /// 构造函数
        /// </summary>
        public CustomContextMenuStrip()
        {
            // 添加菜单项
            Items.Add("发送消息");
            Items.Add("发送文件");

            // 定义菜单项上的Click事件处理函数
            Items[0].Click += new EventHandler(SendMessage);
            Items[1].Click += new EventHandler(SendFile);
        }

        /// <summary>
        /// 发送消息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void SendMessage(object sender, EventArgs e)
        {
            MessageBox.Show("发送消息");
        }

        /// <summary>
        /// 发送文件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void SendFile(object sender, EventArgs e)
        {
            MessageBox.Show("发送文件");
        }
    }
}

二维码