一些背景
我注意到设置 DataForm 的 EditTemplate(来自 Silverlight Toolkit)可能会导致 DataForm 不会被垃圾收集。因此,DataForm 的父控件也不能被垃圾回收,从而导致非常严重的内存泄漏。
这是一些演示此案例的 XAML。
<toolkit:DataForm HorizontalAlignment="Stretch" Margin="10" VerticalAlignment="Stretch">
<toolkit:DataForm.EditTemplate>
<DataTemplate>
<toolkit:DataField Label="Dummy Binding:">
<TextBox Text="{Binding DummyBinding, Mode=TwoWay}" />
</toolkit:DataField>
</DataTemplate>
</toolkit:DataForm.EditTemplate>
</toolkit:DataForm>
我在 CodePlex 上打开了一个问题。该问题有一个附件,其中有一个演示案例的项目。
所以,我的问题是
有没有其他人遇到过这个问题?更重要的是,有人知道任何解决方法吗?如何强制此 DataForm 被垃圾收集?