2010-05-01 28 views
14

NET người mới cảnh báoWinforms - Nhìn bề ngoài loại bỏ sự kiện nhấn nút

Sử dụng Visual C# 2008 Express Edition Tôi đã vô tình tạo ra một sự kiện click cho một nút. Sau đó tôi đã xóa mã phương thức được tạo tự động, dẫn đến lỗi nói rằng hàm đã được tham chiếu trong mã tải biểu mẫu, không thể tìm thấy nữa.

Xóa dòng sau từ hàm Form1.Designer.cs tập tin của InitializeComponent() ...

this.btnCopy.Click += new System.EventHandler(this.btnCopy_Click); 

... dường như làm các trick, tuy nhiên, nó khiến tôi cảm thấy rất bẩn vì cảnh báo sau khi bắt đầu #region:

/// Required method for Designer support - do not modify 
/// the contents of this method with the code editor. 

Tôi không thể tìm cách làm điều này bằng cách sử dụng trình thiết kế biểu mẫu mà tôi cho là phương tiện được ngụ ý bởi cảnh báo này. cách chính xác để làm điều này là gì?

+0

Đôi khi tôi chỉ xóa từ mã, không có sự khác biệt nếu bạn biết những gì bạn đang làm –

Trả lời

30

Bạn phải cẩn thận khi làm việc trong các tệp designer.cs nhưng bạn không phải cảm thấy dơ bẩn về nó (khi tôi phạm sai lầm tương tự, việc sửa chữa tệp designer.cs trở nên dễ dàng hơn). Bạn có thể làm điều đó một cách trực quan như sau:

  1. Mở biểu mẫu trong trình thiết kế biểu mẫu.
  2. Trong trình thiết kế biểu mẫu, hãy nhấp vào nút quan tâm.
  3. Nhấn F4 (hoặc nhấp chuột phải vào nút và sau đó nhấp vào thuộc tính). Ngăn thuộc tính sẽ hiển thị.
  4. Ở đầu ngăn thuộc tính, nhấp vào tia chớp. Điều này cho thấy các sự kiện cho nút.
  5. Tìm sự kiện nhấp và xóa bộ xử lý của nó.
+2

Hoàn hảo, cảm ơn! –

+2

@Wayne Koorts: Không sao, luôn sẵn sàng giúp đỡ :) –

2

OK, tôi thường là người ủng hộ việc sử dụng notepad2 hoặc một số trình soạn thảo văn bản khác để thực hiện các tác vụ mã hóa.

Nhưng, kể từ khi bạn hỏi làm thế nào để làm như vậy trong thiết kế ...

  1. Mở hình thức mà trường hợp có sai sót đã được thêm vào một điều khiển.
  2. Chọn điều khiển.
  3. Nhấp chuột phải, chọn "Thuộc tính".
  4. Thay đổi thành "Sự kiện" bằng cách chọn nút có biểu tượng tia sáng.
  5. Chọn sự kiện bạn cần xóa.
  6. Sau khi đặt chuột vào hộp hiển thị tên phương thức xử lý sự kiện, hãy xóa tất cả văn bản trong hộp đó và nhấn enter. Thao tác này sẽ xóa trình xử lý sự kiện và nhiệm vụ ủy nhiệm cho sự kiện này trên điều khiển của bạn.

Chỉ báo trước là: nếu bạn muốn duy trì phương thức xử lý sự kiện của mình (tức là nó không được tạo tự động bởi Visual Studio) - có thể bạn muốn tránh xóa nhiệm vụ theo cách này. Bởi vì khi tôi nói rằng nó loại bỏ trình xử lý sự kiện - tôi nên nói rằng việc khai báo phương thức xử lý sự kiện trong "Form1.cs" (ví dụ) cũng sẽ bị xóa.

+0

Được rồi, tôi là một kẻ lười biếng. Tôi đã không làm mới trước khi tôi bắt đầu gõ. Jason Punyon đã nói như vậy. Tôi sẽ để lại câu trả lời của tôi bởi vì tôi nghĩ bạn nên biết rằng nếu bạn làm theo cách này - bạn sẽ xóa trình xử lý sự kiện (không cảnh báo). Tôi sẽ cấp +1 cho Jason - nhưng tôi không có đại diện ;-) – EtherealMonkey

+1

Nó không xóa chức năng thực sự đối với tôi, điều này thực sự làm tôi ngạc nhiên. –

+0

Nó chỉ xóa các phương thức trống, có ý nghĩa. –

Các vấn đề liên quan