C# ScrollViewer ScrollBar可见性不更新

C# ScrollViewer ScrollBar可见性不更新,c#,wpf,scrollbar,expander,propertychanged,C#,Wpf,Scrollbar,Expander,Propertychanged,我有多个扩展器,一次只能扩展一个。 我用这个实现了这个。 当在这些扩展器周围添加带有垂直滚动条(可见性自动)的ScrollViewer时,就会出现问题 问题示例: 3个扩展器(a、b、c) 膨胀机a膨胀,b&c倒塌 单击扩展器b时,a折叠,b展开,但滚动条可见(但已禁用),即使有足够的空间 当b展开时,滚动条可见性将更新(为可见,因为当a&b展开时,没有足够的空间),但当a折叠时,它不会再次更新为隐藏 这是我的xaml的缩短版本。扩展属性的绑定方式与链接答案中的绑定方式相同 <Scro

我有多个扩展器,一次只能扩展一个。 我用这个实现了这个。 当在这些扩展器周围添加带有垂直滚动条(可见性自动)的ScrollViewer时,就会出现问题

问题示例:

  • 3个扩展器(a、b、c)
  • 膨胀机a膨胀,b&c倒塌
  • 单击扩展器b时,a折叠,b展开,但滚动条可见(但已禁用),即使有足够的空间
当b展开时,滚动条可见性将更新(为可见,因为当a&b展开时,没有足够的空间),但当a折叠时,它不会再次更新为隐藏

这是我的xaml的缩短版本。扩展属性的绑定方式与链接答案中的绑定方式相同

<ScrollViewer VerticalScrollBarVisibility="Auto">
    <Grid>
        <DockPanel>
            <Expander x:Name="a"/>
            <Expander x:Name="b"/>
            <Expander x:Name="c"/>
        </DockPanel>    
    </Grid>
</ScrollViewer>


听起来像是布局问题。在所有相关元素中添加
背景
(使用不同的颜色),然后自己查看安排。示例,因为它不足以重现问题。我感觉你在某处明确地设置了高度。谢谢你的快速回答。我没有在任何地方设置高度,我有一个固定高度的窗口,如果scrollviewer的内容越来越大,就会出现滚动条。听起来像是布局问题。在所有相关元素中添加
背景
(使用不同的颜色),然后自己查看安排。示例,因为它不足以重现问题。我感觉你在某处明确地设置了高度。谢谢你的快速回答。我没有在任何地方设置高度,我有一个固定高度的窗口,如果scrollviewer的内容越来越大,就会出现滚动条。