如何单击折叠的 WPF 扩展器后面的内容?
Posted
技术标签:
【中文标题】如何单击折叠的 WPF 扩展器后面的内容?【英文标题】:How to click content behind collapsed WPF expander? 【发布时间】:2011-11-30 12:48:40 【问题描述】:当我折叠扩展器时,它明显折叠,但我无法单击后面的内容。
它占用的空间与展开时相同...
真的可以折叠扩展器吗?提前致谢。
编辑:
代码示例:
<Grid>
<Button Content="CannotClick" Height="23" HorizontalAlignment="Left" Margin="314,91,0,0" Name="button1" VerticalAlignment="Top" Width="75" />
<Expander Header="expander1" Height="190" HorizontalAlignment="Left" Margin="306,32,0,0" Name="expander1" VerticalAlignment="Top" Width="95">
<Grid>
<Button Content="Button" Height="23" HorizontalAlignment="Left" Margin="7,106,0,0" Name="button2" VerticalAlignment="Top" Width="75" />
</Grid>
</Expander>
</Grid>
CannotClick 按钮位于展开器的展开区域下方。
【问题讨论】:
它应该崩溃。您的代码会有所帮助。 您的扩展器是否包含在未调整为折叠扩展器大小的元素中,例如具有固定高度的网格行?正如 Ritch Melton 所提到的,代码/xaml 示例将有助于诊断。 这有帮助吗? blogs.msdn.com/b/wpfsldesigner/archive/2010/02/03/… 将高度设置为自动适用于该示例。 THX 【参考方案1】:我遇到了同样的问题,我的解决方案是不在 Expander 属性中指定 Expander 的高度。这允许在编辑器和可执行文件中修改扩展器后面的内容(折叠时)
<Grid>
<Button Content="CannotClick" Height="23" HorizontalAlignment="Left" Margin="314,91,0,0" Name="button1" VerticalAlignment="Top" Width="75" />
<Expander Header="expander1" HorizontalAlignment="Left" Margin="306,32,0,0" Name="expander1" VerticalAlignment="Top" Width="95">
<Grid>
<Button Content="Button" Height="23" HorizontalAlignment="Left" Margin="7,106,0,0" Name="button2" VerticalAlignment="Top" Width="75" />
</Grid>
</Expander>
</Grid>
【讨论】:
【参考方案2】:这不是扩展器的问题。问题是你的两个控件都放在同一个地方。
要解决此问题,请将行添加到网格并将每个控件插入单独的行,或者将网格替换为 StackPanel
【讨论】:
不就是Expander的意思,就是和别的东西占据同样的空间吗? 不 - docs.microsoft.com/en-us/dotnet/framework/wpf/controls/… Expander 有标题和内容。以上是关于如何单击折叠的 WPF 扩展器后面的内容?的主要内容,如果未能解决你的问题,请参考以下文章