所以这里有几个问题,但他们都会给出相同的答案Me.Hide()
,如果你在加载时计算它是“有效的”,它会显示但是然后会隐藏几秒之后会产生一个奇怪的阴影-y - 痛苦的影响。
实施例: (显示并几乎立即隐藏的小窗口是我试图永远不会显示的窗口)
有没有办法在加载时实际隐藏整个表单?我知道整个VisibilityCore方法但是我找不到一种方法可以在以后再次显示它。
有没有办法隐藏它,所以它永远不会显示,除非我告诉它显示?
目前我正在使用“Hide()结合Form.Show方法”。
答案 0 :(得分:2)
如果您将表单的Opacity
属性设置为0
(通过属性窗口),则不应出现此问题。
当您想要显示表单时(如果要显示该表单),只需将不透明度设置回1.0
。
答案 1 :(得分:2)
不透明仍然是一个黑客。正确的方法是不要显示它,而不是让它看不见。要做到这一点,不要使它成为"启动对象"一点都不。
在“项目属性”屏幕的“应用程序”选项卡上,有一个“启动对象”设置。使用Sub Main()创建一个模块,并通过选择它作为启动对象,而不是那个显然没有做任何视觉效果的小形式,使其成为应用程序的入口点。
也许你在起始形式中有一些初始化代码......将其移动到Sub Main。
答案 2 :(得分:0)
您可以在应用程序启动时最小化表单。
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form fm = new Form1();
fm.WindowState = FormWindowState.Minimized;
Application.Run(fm);
}