Từ 1 tới 3 trên tổng số 3 kết quả

Đề tài: contextmenus trong C#, xin được giúp đỡ

  1. #1
    Ngày gia nhập
    09 2008
    Bài viết
    0

    Mặc định contextmenus trong C#, xin được giúp đỡ

    Chào các bạn. Mình đang viết 1 chương trình nhỏ trong đó có sử dụng contextMenuStrip mà các Option của cái menu này thì thay đổi trong quá trình chạy.

    Ví dụ 1 menu mà có các mục Open, Save, Close là có 3 Options. Nhưng cũng có nhiều trường hợp sau khi chạy chương trình thì có thêm "Open recent file 1", "Open recent file 2"... trên Menu;

    Để thêm 1 mục vào cái contextMenuStrip này thì mình biết là dùng code sau:

    myMenu.Items.Add("Option 4");

    Mình biết cách kiểm tra event nếu người dùng nhấn vào các Option có sẳn (Open,Save, Close) bằng code sau (ví dụ cho Open)
    private void OpenToolStripMenuItem_Click(object sender, EventArgs e)
    {
    // Mở file
    }

    Nhưng mình không biết cách nào để check xem người dùng khi nhấn vào Option 4 hay Option 10 (nếu trong quá trình chạy cái contextmenu của mình đã có 10 Option).

    Bạn nào biết chỉ mình với, mình cảm ơn rất nhiều.
    Đã được chỉnh sửa lần cuối bởi banmt : 19-09-2008 lúc 03:36 PM.

  2. #2
    Ngày gia nhập
    04 2007
    Bài viết
    21

    Chào bạn, chương trình của bạn mình có hướng như sau, hy vọng sẽ giúp đựoc bạn .

    Đầu tiên bạn tạo 1 contextMenuStrip có tất cả các Option mà bạn cần
    Sau đó bạn hãy viét các Event cho tất cả các Option đó để sử lý
    Ví dụ mình có 4 option :
    Visual C# Code:
    1.         private void option1ToolStripMenuItem_Click(object sender, EventArgs e)
    2.         {
    3.             MessageBox.Show("Option 1 Click");
    4.         }
    5.  
    6.         private void option1ToolStripMenuItem1_Click(object sender, EventArgs e)
    7.         {
    8.             MessageBox.Show("Option 2 Click");
    9.         }
    10.  
    11.         private void option1ToolStripMenuItem2_Click(object sender, EventArgs e)
    12.         {
    13.             MessageBox.Show("Option 3 Click");
    14.         }
    15.  
    16.         private void option1ToolStripMenuItem3_Click(object sender, EventArgs e)
    17.         {
    18.             MessageBox.Show("Option 4 Click");
    19.         }

    Sau đó trong trường hợp bạn muốn ẩn option nào thì bạn chỉ cần viết code làm cho ẩn cái option đó đi

    Ví dụ ẩn Option1 đí :
    Visual C# Code:
    1. contextMenuStrip1.Items["option1ToolStripMenuItem"].Visible=false;

    Sau đó trường hợp khách lại muốn ẩn option 2 đi

    Visual C# Code:
    1. contextMenuStrip1.Items["option1ToolStripMenuItem1"].Visible = false;

    Còn trường hợp muốn hiện Option 1 lên

    Visual C# Code:
    1. contextMenuStrip1.Items["option1ToolStripMenuItem"].Visible = true;

    Các Event của các option vẫn chạp bình thường

    Mình có đoạn code demo hy vong sẽ giúp đựoc bạn
    Attached Files Attached Files

  3. #3
    No Avatar
    doduyhai106 Khách

    Hoặc là bạn dùng sự kiện contextMenuStrip1_ItemClicked
    Giả sử như sau hàm của sự kiện đó như sau:
    Visual C# Code:
    1. private void contextMenuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
    2.         {
    3.             string str = e.ClickedItem.Text;//Bạn lấy được text của Item được click
    4.         }

Các đề tài tương tự

  1. Trả lời: 5
    Bài viết cuối: 03-04-2012, 07:08 PM
  2. Sự cố Nhờ mod chuyển giúp bài "Sắp xếp số thứ tự ngay trong bảng của 1 database?" từ MySQL sang MSSQL giúp!
    Gửi bởi hu-xeko trong diễn đàn Ý kiến, đề xuất và khiếu nại
    Trả lời: 1
    Bài viết cuối: 12-03-2012, 07:48 PM
  3. Bài tập C++ help giúp em sữa lỗi trong hàm tìm kiếm sách và gọi hàm trong chuơng trình quản lí sách
    Gửi bởi Mr.vu112 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 17-11-2011, 07:21 PM
  4. Bài tập C++ Giúp mình viết 1 đoạn code hoàn chỉnh trong C++ về random trong giới hạn
    Gửi bởi sai211dn trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 1
    Bài viết cuối: 06-10-2011, 08:01 PM
  5. Hàm trong C++ không nằm trong main vẫn chạy đúng. Giải thích giúp?
    Gửi bởi tuvan1011 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 15
    Bài viết cuối: 02-09-2009, 12:58 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn