例如,如果我有一個UserControl或一個Page在其代碼隱藏文件中創建自己的事件,那麼當該Page或控件卸載時,是否必須確保它的事件已取消訂閱?我的意思是沒有外部訂閱。每個用戶是自包含的,所以我認爲,一旦控制卸載時不會有問題:我是否必須在所有情況下退訂所有事件?
public sealed partial class MyPage : Page
{
public MyPage()
{
this.Unloaded += Page_Unloaded;
this.Tapped += Page_Tapped;
}
private void Page_Tapped(object sender, TappedRoutedEventArgs e)
{
// Do some work here.
}
private void Page_Unloaded(object sender, RoutedEventArgs e)
{
// Is the following appropriate and REQUIRED?
this.Unloaded -= Page_Unloaded;
this.Tapped -= Page_Tapped;
}
}