01/10/2018, 17:16

Cách thêm ContextMenuStrip trong C#

Ví dụ bên dưới minh họa cách thêm ContextMenuStrip vào form của bạn. Khi bạn chạy chương trình, nhấn chuột phải vào form thì xuất hiện ContextMenuStrip có chứa 2 đối đối tượng menu gồm: “Góc Kinh Nghiệm” và “Chrome”. Các bước lần lượt như sau: Bước 1 : tạo mới đối ...

Ví dụ bên dưới minh họa cách thêm ContextMenuStrip vào form của bạn. Khi bạn chạy chương trình, nhấn chuột phải vào form thì xuất hiện ContextMenuStrip có chứa 2 đối đối tượng menu gồm: “Góc Kinh Nghiệm” và “Chrome”.

Các bước lần lượt như sau:

  • Bước 1: tạo mới đối tượng ContextMenuStrip.

ContextMenuStrip cms = new ContextMenuStrip();

  • Bước 2: lần lược thêm 2 menu gồm: tên menu, hình ảnh tượng trưng cho menu và sự kiện xử lý khi nhấn vào 2 menu.

cms.Items.Add("Góc Kinh Nghiệm", Image.FromFile(@"D:ImagesAvatarsPhanThiet-2.jpg"), new EventHandler(Gockinhnghiem_click));

cms.Items.Add("Chrome", Image.FromFile(@"D:ImagesAvatars130.jpg"), new EventHandler(Chrome_click));

Trong đó:

  1. “Góc Kinh Nghiệm” và “Chrome” là 2 tên được hiện trên ContextMenuStrip
  2. @”D:ImagesAvatarsPhanThiet-2.jpg” và @”D:ImagesAvatars130.jpg: là đường dẫn tuyệt đối dẫn đến hình ảnh bạn chọn làm icon cho 2 menu. Bạn có thể dùng đường dẫn tương đối.
  3. Gockinhnghiem_click và Gockinhnghiem_click: là 2 sự kiện thụ lý cho 2 menu “Góc Kinh Nghiệm” và “Chrome”
  • Bước 3: Gắn 2 menu vừa tạo vào form

this.ContextMenuStrip = cms;

Đoạn code bên dưới được minh họa bằng VS2005:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace MyProject
{
    public partial class FormManuContext : Form
    {
        public FormManuContext()
        {
            InitializeComponent();
            this.Load += new EventHandler(FormManuContext_Load);
        }

        void FormManuContext_Load(object sender, EventArgs e)
        {
            ContextMenuStrip cms = new ContextMenuStrip();
            // Bạn nhớ thay đường dẫn Image ở context menu 1 & 2 bằng đường dẫn image ở máy bạn nhé
            // Context menu 1
            cms.Items.Add("Góc Kinh Nghiệm", Image.FromFile(@"D:ImagesAvatarsPhanThiet-2.jpg"), new EventHandler(Gockinhnghiem_click));
            // Context menu 2
            cms.Items.Add("Chrome", Image.FromFile(@"D:ImagesAvatars130.jpg"), new EventHandler(Chrome_click));

            this.ContextMenuStrip = cms;

        }

        // Hàm này sẽ được thực thi khi bạn nhấn vào "Góc kinh nghiệm"
        void Gockinhnghiem_click(object sender, EventArgs e)
        {
            MessageBox.Show("Bạn vừa nhấn vào "Góc Kinh Nghiệm"!");
        }

        // Hàm này sẽ được thực thi khi bạn nhấn vào "Chrome"
        void Chrome_click(object sender, EventArgs e)
        {
            MessageBox.Show("Bạn vừa nhấn vào "Chrome"!");
        }
    }
}

Chúc các bạn may mắn!


0