【问题标题】:How is win-listview height set? - WinJSwin-listview 高度如何设置? -WinJS
【发布时间】:2012-11-29 01:58:33
【问题描述】:

这把我逼疯了。我不知道如何使列表视图的高度自动。

即让列表视图的高度扩展以占据它需要的所有空间,并让外部容器提供溢出-y 滚动功能。

不幸的是,我似乎找不到任何关于此的文档。

帮助会很棒。谢谢!

【问题讨论】:

    标签: javascript css windows-8 winjs internet-explorer-10


    【解决方案1】:

    ListView 控件默认为 400px 高。这是 ui-light.css 文件的第 1421 行。您可以通过在页面上添加规则来覆盖它,例如:

    .win-listview { 高度:100%; /*(或者你可以用'600px'之类的东西绝对指定)*/ }

    在开发中心的this page 上显示...

    设置 ListView 控件的高度

    ListView 不会动态调整其高度以适应您的内容。对于要呈现的 ListView,您必须为其高度指定一个绝对值。 JavaScript 样式表的 Windows 库将 ListView 控件的高度设置为 400 像素。

    从设计的角度来看,您可能不应该在 ListView 上进行垂直滚动。它们被设计成水平布局(就像一般的应用程序一样)。结合水平和垂直滚动可能会带来尴尬的用户体验。我为此写了一些articles。

    【讨论】:

    • 很好的回复!非常感谢!我曾考虑过使用水平滚动,但对于某些模式,感觉很尴尬。例如下载列表,垂直列表感觉更有效率和直观。
    • 是的,我同意。有时很难考虑它如何适合水平列表。我总是对顶级应用程序(具有巨大的设计预算)以及他们如何调整内容以更好地适应水平印象深刻。在我的 codeSHOW 应用程序(aka.ms/codeshowapp)中,我展示了源代码文件,并结合了水平和垂直。有时没有办法绕过它。
    • @JeremyFoster:如果您只能使用绝对单位,您将如何渲染 listView 以使每个项目的高度从上到下平均分布在 5 或 6 行中?我有一整页的结果,页面底部有一个难看的空白。我应该改用中继器并使用 flexbox 创建自定义布局吗?在不相关的说明中,您的快速入门视频让我通过了 70-480 考试!干得好,谢谢!
    • 我很确定使用 ListView 的默认布局(在 Windows 8.1 中)不可能按照您的要求进行操作,但是您可以实现自定义布局并执行几乎任何您想要的操作.请参阅我的 codeShow project 中的 ListView 演示并查看 Circle 部分。那是使用自定义布局。
    猜你喜欢
    • 1970-01-01
    • 2015-03-16
    • 1970-01-01
    • 1970-01-01
    • 2011-04-04
    • 2014-08-27
    • 1970-01-01
    • 2014-09-11
    • 1970-01-01
    相关资源
    最近更新 更多