允许WPF网格单元格内容在网格单元格外扩展?

Nic*_* W. 15 wpf grid layout xaml

我的WPF窗口中有一个Grid.当按下某个特定按钮时,我希望其中一个网格单元格中的控件向下扩展到原始大小的两倍.发生这种情况时,控件将被剪切到包含单元格的可视边界.但是,我需要在下面的单元格顶部显示所有内容.我尝试将Panel.ZIndex设置为高值,但无济于事.我基本上需要在CSS中模拟"overflow:visible"的功能.在WPF/Xaml中这可能吗?

dot*_*hen 10

在单元格中设置控件的ClipToBounds属性,False然后将单元格的内容包装在Canvas中.Canvas是一个保证突破界限,并非所有控件都可以(例如Buttons).

例:

<Canvas Grid.Row="5" Grid.Column="3">
    <TextBlock Text="Long text here" ClipToBounds="False">
</Canvas>
Run Code Online (Sandbox Code Playgroud)


Chr*_*ain 2

您可以通过弹出窗口来执行此操作:http://msdn.microsoft.com/en-us/library/system.windows.controls.primitives.popup.aspx,特别是如果您希望溢出忽略窗口边界(涉及的解决方案)例如,装饰者可能不会)。您希望将控件放入弹出窗口中,然后扩展弹出窗口的高度以获得溢出效果。您可能需要在弹出窗口后面放置另一个面板或其他东西,以确保未扩展的尺寸保持正确。