WPF で 2 つのビューを切り替える必要があります。ViewModels を使用して、ViewModel に応じて描画するビューを推測する DataTemplate があります。要するに:
<DataTemplate DataType="{x:Type ..:RedScreenViewModel}">
<...:RedScreenViewModel/>
</DataTemplate>
気まぐれで、ビューをすばやく切り替えることにしました..そして、WPFアプリのメモリ使用量が最大2GBになりました。今、あなたは、実生活では私がしたことを誰もやらないだろうと主張するかもしれません. しかし、割り当てられたメモリを解放する方法を知りたいです。Unload は必ず呼び出されます。イベント ハンドラーからサブスクライブを解除しました。しかし、それは役に立ちません。DevExpress または WPF には、.NET にユーザー コントロールを破棄するように指示できるプロパティがありますか? 私が DevExpress で見つけたものですが、zilch は次のとおりです。
DisposeOnWindowClosing
DestroyOnClosingChildren
作成されたビューは非常に複雑です。メモリを節約するためにレイアウトを再編成しました。でも同じくらい増えます。提案は大変ありがたいです。
編集:ただし、デストラクタは呼び出されません...