将两个控件的高度设置为相同

时间:2014-10-25 03:14:26

标签: c# winforms

如何让两个控件共享相同的高度。我已经将两个控件的大小设置为相同,但是当我运行它时,我看到了一个区别。

 this.txtUserName.Size = new System.Drawing.Size(382, 45);
   this.btnLogin.Size = new System.Drawing.Size(75, 45);

enter image description here

2 个答案:

答案 0 :(得分:1)

实际上两个与您设置的Height相同。但是,为了适应BorderStylesFlatStyles的{​​{1}}(Buttons),完整尺寸并不总是可见

因此,Button看起来在每一侧一个像素小于Height所具有的这些(当前)外观:

button1.FlatStyle = FlatStyle.Standard
button1.FlatStyle = FlatStyle.System

使用

可以看到完整尺寸
button1.FlatStyle = FlatStyle.Popup
button1.FlatStyle = FlatStyle.Flat

如果您确定自己选择FlatStyle,可能需要相应调整他们的身高(和位置!)。

如果将BorderStyle从TextBoxFixedSingle设置为Fixed3DNone的可见高度会发生变化,这会更加复杂:它会缩小 7 (!)像素..

请注意,据我所知,所有关于bordertyles的细节都取决于Windows版本&目标计算机上的视觉样式..我在这里运行W8.1

答案 1 :(得分:0)

打开Form.Designer.cs并转到表单的InitializeComponent()方法,您将看到表单上所有组件的初始化代码。

如果您在构造函数的InitializeComponent()调用之前设置这些值,它将会丢失。否则,您可能需要检查组件的边距和填充。

http://msdn.microsoft.com/en-us/library/vstudio/ms229627(v=vs.100).aspx