繁体   English   中英

WPF DataGrid ItemsSource memory 泄漏

[英]WPF DataGrid ItemsSource memory leak

我不知道为什么,但是当我定义我的 DataGrid 的 ItemsSource 时,它会创建一些 memory 泄漏。

这是我的 DataGrid 的 xaml 代码:

<DataGrid x:Name="DataGrid1" AutoGenerateColumns="True" IsReadOnly="True" ClipboardCopyMode="ExcludeHeader" Margin="20,250,20,20" SelectionUnit="Cell" Style="{DynamicResource MaterialDesignDataGrid}" SelectionMode="Single"/>

这是我定义 ItemsSource 的代码:

cmd = New SqlCommand With {
    .CommandText = strsql,
    .Connection = DBConn.ADONETconn
    }
da = New SqlDataAdapter(cmd)
dt = New DataTable("RECH")
da.Fill(dt)
DataGrid1.ItemsSource = dt.DefaultView

正如您从诊断工具中看到的那样,我在某处有一些 memory 泄漏。 在此处输入图像描述

我知道这是由DataGrid1.ItemsSource = dt.DefaultView行引起的,因为如果我对其进行评论,则不会发生 memory 泄漏。

我已经下载了 JetBrains dotMemory 看看发生了什么。 正如您在下面看到的,它告诉我它是由 DataGridRow 引起的。 在此处输入图像描述

我不明白为什么会这样。 数据表中的数据是正确的。 在此处输入图像描述

如果您有任何线索,请与我分享

成立。 实际上它来自我的 DataGrid 在 StackPanel 中的事实。 我仍然不知道为什么,但这是一个问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM