Tôi đã tự hỏi nếu đặt một đối tượng thành null sẽ xóa bất kỳ bộ tổ chức sự kiện nào được gắn với các sự kiện đối tượng ...C# Gỡ bỏ rõ ràng Trình xử lý sự kiện
ví dụ:
Button button = new Button();
button.Click += new EventHandler(Button_Click);
button = null;
button = new Button();
button.Click += new EventHandler(Button_Click);
button = null;
vv ...
này có gây ra rò rỉ bộ nhớ?
Điều này có nghĩa là các trình xử lý sự kiện cho các thanh ứng dụng không cần loại bỏ rõ ràng không (ví dụ như statechanged)? –
Đây là tình huống ngược lại. AppBar là một đối tượng tồn tại lâu dài và một trình xử lý sự kiện sẽ ở mức tối thiểu, giữ đối tượng mà các đại biểu đề cập đến còn sống cho đến khi AppBar còn sống và bạn có thể không muốn điều đó xảy ra. Mặt khác, nếu trình xử lý là phương thức trên cửa sổ sở hữu thanh, điều đó không quan trọng. –