Account 개체가 채워진 ListBox가있는 Windows.Forms 앱이 있습니다. 사용자가 목록에서 계정을 선택하면 사용자가보고있는 동안 새로운 계정이있을 경우 선택한 계정 트랜잭션을 업데이트하는 EventHandler를 첨부합니다.이벤트 핸들러 Garbageclection
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
var selected = listBox1.SelectedItem as Account;
if (selected != null)
{
UpdateTransactions(selected);
selected.OnNewTransaction += (s, a) => UpdateTransactions(selected);
}
}
그럼 내 질문은 다음과 같습니다. 사용자가 목록에서 다른 계정을 선택하고 선택한 계정이 범위를 벗어나는 즉시이 이벤트 핸들러가 자동으로 삭제됩니까? 아니면 계속 켜져 있으며 사용자가 동일한 계정을 다시 선택하면 다른 핸들러가 지정되어 메모리 리크가 생성됩니까?
빠른 답변 주셔서 감사합니다 :) – Frank