当前位置:  开发笔记 > 运维 > 正文

ListBox与ItemTemplate(和ScrollBar!)

如何解决《ListBox与ItemTemplate(和ScrollBar!)》经验,为你挑选了3个好方法。

我有一个数据绑定和itemtemplated ListBox:


    
      
        
          
          
      
    

它显示很好,它们来自ObservableCollection.

问题滚动条出现,但无法使用-它不会有一个把手抢.我已经尝试在ListBox上设置一些ScrollView附加属性,但它们不会影响这种情况.



1> Muad'Dib..:

我将你的代码粘贴到测试项目中,添加了大约20个项目,我得到了可用的滚动条,没有问题,并且它们按预期工作.当我只添加一些项目(这样不需要滚动)时,我没有可用的滚动条.可能是这种情况吗?你没有添加足够的物品?

如果删除,ScrollViewer.VerticalScrollBarVisibility="Visible"则仅在需要时才显示滚动条.



2> Arcturus..:

ListBox将尝试扩展可用的高度.当您设置ListBox的Height属性时,您将获得一个实际工作的scrollviewer ...

如果您希望ListBox符合可用高度,您可能希望尝试从父控件调节高度.例如,在Grid中,在RowDefinition中将Height设置为Auto可能会有所帮助......

HTH



3> 小智..:

我从来没有幸运任何可放置在堆叠面板内的可滚动内容(任何从ScrollableContainer派生的内容.stackpanel有一个奇怪的布局机制,当测量操作完成时会混淆子控件,我发现垂直尺寸最终无限,因此不受约束 - 因此它超出了容器的边界并最终被剪切.滚动条没有显示,因为控件认为它没有世界上的所有空间.

您应该始终将可滚动内容放在容器中,该容器可以在运行时的布局操作期间解析为已知高度,以便滚动条大小适当.可视树中的父容器必须能够解析为实际高度,如果将RowDefinition o的高度设置为auto或fixed,则会在网格中发生这种情况.

这也发生在Silverlight中.

-em-

推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有