【发布时间】:2010-01-15 22:37:33
【问题描述】:
我目前在一个Windows Forms上有一个Textbox,我需要在Textbox的右边动态添加一个PictureBox框控件。
我以编程方式创建图片框,并且在设置图片框的位置时,我的设置如下:
pBox.Location = new Point(tbControl.Location.X + ctrl.Width, ctrl.Location.Y);
所以我将图片框设置在文本框的 X 位置加上文本框的宽度。但是,由于文本框的锚属性设置为 right,因此其宽度会增加以填充其自身和表单边框之间的空间。
问题是,即使文本框的宽度在视觉上大于 Textbox.Width 的实际值。 Width 属性没有考虑被锚定的额外宽度。
我已经尝试过 Textbox.Bounds.Width、Textbox.ClientSize.Width、Textbox.DisplayRectangle.Width 等属性,但没有成功。所有这些属性都返回控件的原始宽度,而不考虑由于 Anchor 属性而调整大小的宽度。
有谁知道我如何确定文本框的实际大小?谢谢
【问题讨论】:
标签: winforms