Tôi có một danh sách các Button
, và tôi thêm một event handler cho mỗi nút:Tôi có nên xóa trình xử lý sự kiện không?
List<Button> buttons = new List<Button>();
for (int i = 0; i < 10; i++)
{
Button btn = new Button();
btn.Click = new RoutedEventHandler(OnbtnClick);
buttons.Add(btn);
}
Sau đó, tôi xóa danh sách:
/* Have I to remove all events here (before cleaning the list), or not?
foreach (Button btn in buttons)
btn.Click -= new RoutedEventHandler(OnbtnClick);
*/
buttons.Clear();
Tôi có thể sai, nhưng tôi không tin btn.Click - = new RoutedEventHandler (OnbtnClick); thậm chí loại bỏ trình xử lý, vì bạn đang sử dụng toán tử mới thay vì trình xử lý được thêm ban đầu. –
@KDiTraglia Đó là một cú pháp hợp lệ, xem [this] (http://msdn.microsoft.com/en-us/library/aa645739 (v = vs.71) .aspx) hướng dẫn. – gliderkite
@gliderkite ah sai lầm của tôi, tôi nghĩ rằng tôi nhớ đọc ở đâu đó rằng nó không hoạt động. –