我正在.NET Compact Framework中开发一个表单,它包含可变数量的控件。每个控件的宽度应与表单的宽度相同。当只有几个控件时,不会出现垂直滚动条。当控件多于一个表单中的控件时,会出现一个垂直滚动条。然后应修改控件的宽度,以便不显示水平滚动条。
实现这一目标的最佳方法是什么?我感兴趣的是一个适用于所有平台/屏幕尺寸并且可以支持屏幕方向更改的解决方案。
答案 0 :(得分:2)
如果我说得对,在某一点上,会出现垂直和水平滚动条,而您只想要垂直滚动条?不将每个控件的Anchor设置为“Top | Left | Right”会自动解决这个问题吗?
答案 1 :(得分:1)
如果每个控件的宽度与表单的宽度相同,为什么不将每个控件都停靠在Top(或Bottom)?那么它会照顾你的大小。然而,它可能看起来不太吸引人,所以我建议添加一些空面板(以相同的方式停靠)以用作垂直隔板。
答案 2 :(得分:0)
我做了一些快速测试,看起来,当你添加控件时,当添加的控件触发scollbars可见时,面板会引发resize事件。令人讨厌的部分是在启动期间触发调整大小事件几次:( 但是要知道紧凑的框架,这可能是你处理这个问题的最好方法。
通常在完整框架上,如果DisplayRectangle大于面板的大小,但cf上不存在这样的东西。
希望这有一些帮助,我会看看我早上能不能找到更多。