假设我有一个带有自定义UserControl的窗口,UserControl里面有一个文本框。当我拖动窗口时,TextBox如何检测到它正被移动?
我尝试搜索其RenderTransform属性,当“Freezable对象或其中一个对象发生更改”时会触发Change事件。没什么结论..
编辑:
在我的情况下,我没有看到窗口,我看到的只是UserControl而且我不能再高了。
答案 0 :(得分:7)
您需要订阅Window事件,因为您的文本框实际上并未移动(最有可能位于与窗口相关的位置),因此您可以订阅Window.LocationChanged
事件,以便在窗户被移动了。
但是如果您的控件没有绝对位置,那么您将需要解析Window.SizeChanged
,它将告诉您用户何时调整窗口大小,但它是一个离散的最终事件而不是正在进行中事件
答案 1 :(得分:3)
尝试订阅UserControl的LayoutUpdated事件。