c# - ScrollViewer 的视口(viewport)大小上的事件已更改

标签 c# wpf scrollviewer

我有一些自定义计算,可以根据 ScrollViewer 视口(viewport)的尺寸更改控件的尺寸。目前,我在获取 ScrollViewer.SizeChanged 事件时进行这些计算。但是,似乎 SizeChanged 事件在 ScrollViewer 更新 ViewPort 尺寸之前执行。我的 SizeChanged 事件处理程序显示了一个 ScrollViewer 发送器,其 Width 和 Height 已更新为新尺寸,但 ViewportWidth 和 ViewportHeight 属性为旧尺寸。

有没有办法在这些值改变后执行代码?

最佳答案

根据 MSDN您检查 ScrollViewer 的 ScrollChanged 事件。当它触发时,表示视口(viewport)宽度或视口(viewport)高度已更改。

OnScrollChanged Called when a change in scrolling state is detected, such as a change in scroll position, extent, or viewport size.

关于c# - ScrollViewer 的视口(viewport)大小上的事件已更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21714443/

相关文章:

WPF:如何重置/重新计算 ScrollViewer "ScrollableHeight"

c# - Windows 商店应用程序 ScrollViewer.ChangeView() 不工作

C# WPF - ScrollViewer + TextBlock 问题

c# - amCharts:对 WPF MVVM 数据绑定(bind)有帮助吗?

c# - 如何检查Web服务器是否启动? (C#)

c# - 如何限制excel采用默认时间格式

c# - C# 中的 Agent/MailboxProcessor 使用新的 async/await

c# - Fluent合并到main.exe后出现的问题

c# - 如何在WPF中使按钮的透明部分可单击?

c# - 在两个选定列表中拆分linq join查询,并使用Tuple返回两个列表