c# - ShowInTaskbar=true 让我的表单消失

标签 c# .net winforms

应用程序是为 .NET 2.0 编译的(如果相关)。 最初表单是使用 ShowInTaskbar=false 创建的,它不会出现在任务栏中,一切都很酷。但是,当某些操作(在表单上拖动文件并开始文件上传)执行 ShowInTaskbar=true (为了显示更改窗口标题/win7 任务栏功能的进度)时,主表单就会消失。 this.Show(), this.Visible=true - 他们没有帮助。在执行 ShowInTaskbar=false 之前,无法找到表单。然后它出现在它失踪的同一个地方......知道会发生什么吗?

最佳答案

我知道这个问题已经在一年多以前被问过了,但它仍然不时地出现在谷歌搜索结果中。

如设置 ShowInTaskbar 窗口时所述,重新创建整个表单(或类似的东西)。因此,如果您有输入字段或任何类似的控件,它们将被重置。

在我的例子中,当我想将我的应用程序最小化到通知托盘区域时,我使用了 ShowInTaskbar = false,这样我的应用程序在最小化时不再出现在任务栏中。当您将应用程序恢复到 FormWindowState.Normal 时,问题就来了。您以前拥有的所有控件都被重置了。

解决方法是在调用 ShowInTaskbar = false 之前从表单中删除所有控件“this.Controls.Remove(control1)”,然后在表单完成后重新添加“this.Controls.Add(control1)”恢复。

这就是我的工作。 希望对您和其他人有所帮助。

关于c# - ShowInTaskbar=true 让我的表单消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7853620/

相关文章:

c# - 每个代码页是否作为 .NET 中 System.Text.Encoding 的子类实现

c# - 用户控件 - 从数据源的属性名称列表中选取属性值

C# ShowDialog 调用另一个 ShowDialog

c# - DataGridView 中的图像问题

c# - 如何在首次安装后禁用 exe 文件?

c# - dbcontext.Add 和 dbcontext.AddObject 之间有什么区别

c# - 以编程方式制定图像轮廓(最好是 C#/C++ 编码,或伪编码)

c# - Entity Framework 查询outofmemoryexception

c# - 如何使页面不使用 ASP.NET MVC 3 中的母版页

c# - 当 TextBox 失去焦点时在 ViewModel 中运行函数?