我创建了一个带有10个按钮的Stack面板。每当我将焦点放在按钮上时,它必须被展开,如果我移除焦点,它必须达到正常尺寸。
我是通过使用渲染概念和Panel.ZIndex。
完成的但是如果我将StackPanel保留在ScrollViewer中,那么按钮扩展是不可见的,即扩展按钮位于ScrollViewer内部。
但扩展按钮必须完全可见。
请帮我怎么做
我附上了我的示例解决方案here。
在示例解决方案中,前两行按钮面板放置在相应的滚动查看器内。
我希望前两行按钮与最后一行按钮相同。
答案 0 :(得分:4)
Panel.ZIndex仅确定同一容器中控件的相对z顺序。此外,您所描述的内容与z-order无关,而是与ScrollViewer的剪辑行为无关。 ScrollViewer将其渲染剪辑到可见内容区域的边界。因此,ScrollViewer内部尝试在其边界之外渲染的任何内容都将被隐藏。你不能简单地关闭剪辑,否则ScrollViewer将毫无用处。
您可以做的是使用弹出窗口并手动将其放在按钮上。这不是很好,但这是上下文菜单和工具提示的工作方式。