【问题标题】:Auto-size controls in .NET CF to avoid horizontal scrolling?.NET CF 中的自动调整大小控件以避免水平滚动?
【发布时间】:2010-10-04 08:41:01
【问题描述】:

我正在 .NET Compact Framework 中开发一个表单,它承载可变数量的控件。每个控件都应与窗体具有相同的宽度。当只有几个控件时,不会出现垂直滚动条。当控件的数量超出一个表单的容量时,会出现一个垂直滚动条。然后应该修改控件的宽度,以便不会出现水平滚动条。

实现这一目标的最佳方法是什么?我对适用于所有平台/屏幕尺寸并且可以支持屏幕方向更改的解决方案感兴趣。

【问题讨论】:

    标签: winforms windows-mobile compact-framework scrollbar


    【解决方案1】:

    如果我做对了,在某一时刻,垂直和水平滚动条都会出现,而您只需要垂直滚动条吗?将每个控件的Anchor设置为“Top|Left|Right”不就自动解决了这个问题吗?

    【讨论】:

      【解决方案2】:

      如果每个控件都与窗体的宽度相同,为什么不将每个控件停靠到顶部(或底部)?然后它会为你调整大小。但是它可能看起来不太吸引人,所以我建议添加一些空面板(以相同的方式停靠)用作垂直间隔。

      【讨论】:

        【解决方案3】:

        我做了一些快速测试,看起来,当您添加控件时,当添加的控件触发 scollbars 以使其可见时,面板会引发 resize 事件。烦人的部分是在启动过程中触发了几次调整大小事件:( 但是知道紧凑的框架,这可能是您处理这个问题的最佳选择。

        通常在完整框架上,如果 DisplayRectangle 大于面板的大小,则可以,但 cf 上不存在这样的东西。

        希望这对你有所帮助,我会看看早上能不能找到更多。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-08-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-10-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多