C# 如何解决在启用ScrollViewer的情况下调整窗口大小时的性能问题

C# 如何解决在启用ScrollViewer的情况下调整窗口大小时的性能问题,c#,wpf,xaml,scrollviewer,C#,Wpf,Xaml,Scrollviewer,我有一个视图,其中包含大量内容的UserControl被ScrollViewer包装。当我用鼠标调整窗口大小时,我有非常纯的性能。当我移除围绕UserControl的ScrollViewer时,性能问题消失了。如何在使用鼠标调整窗口大小时使用ScrollViewer而不降低性能?在拖动开始时,可以将用户控件的宽度和高度设置为实际宽度和高度。在拖动停止时,可以再次使控件的宽度和高度自动。但通常,当您将ScrollViewer包装在已经具有隐式ScrollViewer的控件周围时,会出现此问题,例如

我有一个视图,其中包含大量内容的UserControl被ScrollViewer包装。当我用鼠标调整窗口大小时,我有非常纯的性能。当我移除围绕UserControl的ScrollViewer时,性能问题消失了。如何在使用鼠标调整窗口大小时使用ScrollViewer而不降低性能?

在拖动开始时,可以将用户控件的宽度和高度设置为实际宽度和高度。在拖动停止时,可以再次使控件的宽度和高度自动。但通常,当您将ScrollViewer包装在已经具有隐式ScrollViewer的控件周围时,会出现此问题,例如ListBox或DataGridYes,我的UserControl中有DataGrid和ListView。我为它们禁用了水平和垂直滚动条,但仍然存在性能问题…然后不要在ScrollViewer中包装UserControl的内容。通常禁用这些控件的滚动条不是一个好主意。最好将自定义控件的内容放在网格或DockPanel中