【发布时间】:2011-01-30 09:45:58
【问题描述】:
我想知道是否有人熟悉设计可扩展到任何分辨率的 UI。 .NET 是否有任何库或功能可以让这变得简单?我们也有 Infragistics 控制作为一种资源。
【问题讨论】:
标签: vb.net winforms user-interface
我想知道是否有人熟悉设计可扩展到任何分辨率的 UI。 .NET 是否有任何库或功能可以让这变得简单?我们也有 Infragistics 控制作为一种资源。
【问题讨论】:
标签: vb.net winforms user-interface
对于 Windows 窗体,最好的选择是使用动态生成的布局控件,并确保使用控件的 Anchor/Dock 属性进行放置,而不是显式定位和调整大小。
布局面板(例如 TableLayoutPanel)也有很大帮助,因为它们会在运行时动态调整大小。
话虽如此,这是 WPF 比 Windows 窗体具有巨大优势的一个地方。在 WPF 中,所有大小和布局都是通过一个“像素”完成的,它是一个虚拟化的、与分辨率无关的“像素”,对应于 1/96 英寸。这意味着你的 UI 可以在任何分辨率下工作,只要你没有明确地搞砸它。
【讨论】:
使用TableLayoutPanel。然后,您可以布置一个可扩展的网格(您可以混合使用固定宽度/高度和基于百分比的变量),然后将 UI 组件停靠/锚定到表格单元格。
【讨论】:
FWIW,您应该始终牢记,用户可以在“控制面板”的“显示设置”中切换其默认字体的大小。仍有一些控件无法正确处理此大小问题,因此您应该小心您对预期大小所做的假设。
【讨论】: