アプリに動的に追加しているコントロールを破棄したい。ガベージコレクターは.Remove()
、親コントロールからオブジェクトを取得した後、オブジェクトを取得していません。また、巨大なビットマップとジオメトリのプライベートメンバーがあります。
私はこのようなことをしたいです:
foreach (ScrollItem mylabel in canvas1.Children)
{
if (mylabel.bRemove == true)
{
canvas1.Children.Remove(mylabel);
mylabel = null; // or mylabel.Dispose();
}
}
canvas1
にnullアイテムを含めることがUIObjectCollection
できないため、nullに設定できません。また、それだけRemove()
ではガベージコレクターはそれを収集しません。
私は次のようなことをしようとしました:
myobj = mylabel;
canvas1.Children.Remove(mylabel);
myobj = null;
しかし、それも機能しません。