2013-05-16 24 views
0

我设置窗体大小为0,并与下面的代码显示它:C#形式显示了大小比其他什么设置

Form overlay = new Form(); 
overlay.Size = new Size(0, 0); 
overlay.Show(); 

但显示表单时,它的大小是140x39px。 在叠加的构造函数中,我将它的大小设置为0. 这种行为的原因是什么?

+6

为什么你想要一个大小为0的表单? – ean5533

+1

显示零尺寸表单有什么意义? – Brad

+3

根据版本的不同,Windows会对窗体施加最小大小。 ['SystemInformation.MinimumWindowSize'](http://msdn.microsoft.com/en-us/library/system.windows.forms.systeminformation.minimumwindowsize.aspx)告诉你什么是最小尺寸。如果你仍然想要比这更小,那么你可能不得不自己去画窗户。 – vcsjones

回答

0

如果您通过0,则假设您不关心大小,并根据需要显示的内容计算默认大小。

可以使用测试:

Form overlay = new Form(); 
overlay.Size = new Size(100, 100); 
overlay.Show(); 

如果此大小的作品,传递0可能相当于自动的。

4

您需要检查窗体上的MaximumSize和MinimumSize属性。您可能试图设置比MinimumSize小的尺寸。

1

如果要隐藏表单,请使用Hide()方法。

+0

为什么隐藏它,当你可以不显示它开始... – Servy

+0

我认为他试图隐藏窗体,并向我们展示了整个问题的一个例子,因为什么是创建窗体与大小(0,0 )? – aef

+0

的确,我们不知道这一点。他可能试图隐藏它,或者他可能试图做任何其他事情;我们需要知道实际问题是什么,才能够提出适当的解决方案。 – Servy

相关问题