内存泄漏绑定到依赖项属性

时间:2014-05-09 09:02:04

标签: c# xaml memory-leaks windows-store-apps windows-8.1

我在Windows 8.1 Store App中有内存泄漏,我在UserControl中有自己的网格控件:

<ItemsControl ItemsSource="{Binding Rows, ElementName=ThisUserControl}">
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <Border>
                <ItemsControl ItemsSource="{Binding Cells}" >
                    <ItemsControl.ItemTemplate>
                        <DataTemplate>
                            <ContentControl ContentTemplate="{Binding GridControlCellDataTemplate, ElementName=ThisUserControl}"></ContentControl>
                        </DataTemplate>
                    </ItemsControl.ItemTemplate>
                </ItemsControl>
            </Border>
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>

Rows,Cells和GridControlCellDataTemplate都是DependencyProperties,我用于此场景的CellDataTemplate是空的:

<DataTemplate x:Key="GridControlCellDataTemplate"></DataTemplate>

每次我将Rows-property更改为新的ObservableCollection时,内存都会上升,并且不会被清除。

是不是可以用这种方式绑定它?或者我在寻找泄漏的错误位置?如果我删除ContentControl,泄漏就会消失。

0 个答案:

没有答案