有时我需要将几个项目组合在一起,并且在父面板的布局方面我不需要太多。几乎任何面板都可以。
在这些情况下,不同的面板类型之间是否有明显的赢家,或者它们实际上是等效的吗?
有时我需要将几个项目组合在一起,并且在父面板的布局方面我不需要太多。几乎任何面板都可以。
在这些情况下,不同的面板类型之间是否有明显的赢家,或者它们实际上是等效的吗?
Canvas 在处理布局时比 Grid 轻得多。
但是你说:
在布局方面我不需要太多。
Canvas 甚至可能无法为您提供所需的少量内容。尽管让 Canvas 为您工作可能并不费力。当然,这取决于你在做什么。
Canvas 是轻量级的,因为它的布局(测量和排列)通道比 Grid 简单得多。
话虽如此,Grid 在适应其容器和屏幕(包括屏幕尺寸、分辨率和 dpi)方面比画布具有很大的灵活性。
要记住的一件事是 Grid 会自动调整大小以适应其内容,而 Canvas 不会。当 Canvas 或 Grid 嵌套在其他面板中时,这很重要。特别是如果面板的大小可以改变(例如显示可变大小的列表),Grid 或 StackPanel 会更容易使用。