繁体   English   中英

如何停靠在顶部和左侧

[英]How to dock to the top and the left

使用锚点我可以写下以下行:

myControl.Anchor = (AnchorStyles.Top | AnchorStyles.Left);

它会将myControl锚定在左侧和顶部。

为什么我不能做以下事情:

myControl.Dock = (DockStyle.Top | DockStyle.Left);

我可以编写上面的代码,但它只是将DockStyle为左边。

有什么想法/原因吗?

你不能这样做的原因是因为设置DockStyle基本上停靠/填充指定边缘的整体性。

例如, DockStyle.Left表示停靠项目的高度始终是容器的高度,X,Y位置始终为0,0。

DockStyle.Top表示项目的宽度始终是容器的宽度,位置始终为0,0。

设置DockStyle.TopDockStyle.Left本质上会给你DockStyle.Fill 即与容器相同的宽度高度。

Dock是预定的锚点集,而Anchor是自定义的Dock配置。

DockStyle.TopAnchor = (AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right)相同,不同的是锚点可以位于任何初始位置,并且码头将移动到远边缘。

DockStyle只能设置为一个值,而Anchor可以设置为多个。

这就是为什么有Anchor属性,以便您可以调整控件对更具体地调整大小的形式的反应。

你可能正在寻找的是Anchor属性:

myControl.Anchor = AnchorStyles.Bottom  | AnchorStyles.Right

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM