【发布时间】:2010-11-25 05:55:35
【问题描述】:
我在ScrollViewer 中有一个ItemsControl。 ItemsControl 中的项目扩展为 DataTemplate,它基本上由 Adorner 组成。
现在的问题是,在滚动时,Adorner 的 Visual Children 在 ScrollViewer 之外可见。假设我从水平偏移量 0 滚动到 100,Adorner 的 Visual Children 向左移动并且在 ScrollViewer 旁边可见,尽管它们应该被隐藏。在ItemsControl 或ScrollViewer 上设置ClipToBounds 不起作用。
我了解,Adorner 以 z 顺序呈现在所有元素之上,但在 ScrollViewer 这样的情况下,它们确实不应该可见。顺便说一句,装饰的Element 的行为与预期的一样,并且通过ScrollViewer 是不可见的。
有什么简单的方法可以“剪辑”Adorners,使它们只在可见滚动区域中可见?
谢谢, 安德烈
【问题讨论】:
-
在下面的线程中,Wei Zhou 重新模板化了 ScrollViewer,因此按钮的 Adorner 受到约束。 Implement selection highlighting - advice please
-
您遇到了哪个版本的 .NET/WPF?我实际上正在尝试重新创建这种行为,但我做不到。基本上我希望我的错误装饰器显示超出滚动查看器的边界(不使用弹出窗口)