.Net 4.5 より前では、WPF コントロールは、インターフェイスICommandのイベントからサブスクライブしなかったため、弱いイベント パターンを使用しないカスタム実装でリークしていました。CanExecuteChanged
これでCanExecuteChangedEventManagerクラスが作成され、JustDecompile をすばやく検索すると、MenuItemそのクラスButtonBaseがマネージャーを使用していることがわかり、リークが回避されます。
カスタムを作成するときに弱いイベント パターンを使用する必要はありますICommandか?