應用程序是爲.NET 2.0編譯的(如果它相關的話)。 最初窗體是使用ShowInTaskbar = false創建的,它不會出現在任務欄中,並且一切都很酷。但是,當某些操作(拖動窗體上的文件並開始文件上載)執行ShowInTaskbar = true時(爲了顯示更改窗口標題/ win7任務欄功能的進度),主窗體消失。 this.Show(),this.Visible = true - 他們沒有幫助。在執行ShowInTaskbar = false之前,表單無處可查。然後它出現在它失蹤的同一地點......任何想法可能發生什麼?ShowInTaskbar = true使我的表單消失
回答
它爲我的作品:
using System.Windows.Forms;
class Test
{
static void Main()
{
Form form = new Form();
Button button = new Button { Text = "Toggle" };
button.Click += delegate { form.ShowInTaskbar = !form.ShowInTaskbar; };
form.Controls.Add(button);
Application.Run(form);
}
}
不可否認它閃爍,當你撥動它,但這不應該是太重要了。您是否有任何可能因爲更改而被解僱的事件,這可能會隱藏您的表單?
明天生病嘗試把一個測試用例放在一起,看看我是否可以複製行爲。 – marrat
您的應用程序在ShowInTaskBar = true和... = false之間忙嗎?
您的應用程序可能會被要求回覆消息並重新繪製其窗口,因此如果它正忙於處理並且不將控制權返回給消息處理循環,它將不會響應(並因此更新屏幕),直到你已經完成了一切。
如果出現這種情況,您可能需要在Windows.Forms.Timer上啓動處理,甚至使用另一個線程(BackgroundWorker或ThreadPool)來允許您的UI在進行處理時繼續響應。
它處理事件就好了。當它顯示在任務欄上傳過程中時,顯示效果很好。 – marrat
我知道這個問題已在一年前問過,但它在Google搜索結果中不時彈出。
如設置ShowInTaskbar窗口時所述,重新創建整個窗體(或類似的東西)。所以,如果你有輸入字段或任何這樣的控制,他們將被重置。
在我的情況下,當我想將我的應用程序最小化到通知托盤區域時,我使用ShowInTaskbar = false,以便在最小化時我的應用程序不再出現在任務欄中。當您將應用程序還原到FormWindowState.Normal時,會出現問題,您以前擁有的所有控件都將被重置。
解決方法是在調用ShowInTaskbar = false之前從窗體中刪除所有控件「this.Controls.Remove(control1)」,然後在表單中重新添加「this.Controls.Add(control1)」被恢復。
這是我的工作。 希望它可以幫助你和其他人。
感謝您的提示。 – Oliver
當我將「ShowInTaskbar」設置爲false時,我遇到了面板消失的問題。然後,當我嘗試將其設置爲true時,面板仍然丟失。由於所有其他控件都很好,除了面板以外,這讓我感到非常緊張。它顯示「已啓用」,「可見」全部爲真,位置和大小在「ShowInTaskbar」設置前後相同。我遇到這個帖子,這是對我有用。希望它能幫助別人。
void ShowTaskbarIcon(bool e)
{
try
{
mf.Controls.Remove(mf.pnlMain);
mf.ShowInTaskbar = e;
mf.Controls.Add(mf.pnlMain);
}
catch (Exception ex)
{
ec.Get(ex.ToString(), 55, 1);
}
}
基本上我刪除和添加,如已在這裏所述的答案。我只想感謝大家幫助我提供解決方案。
- 1. noconflict使我的表單消失
- 2. 當我調用setZOderOnTop時,surfaceview消失(true)
- 3. 在tableview上setediting = true會使cellview消失?
- 4. php表單消失
- 5. 消失web表單
- 6. itextSharp:使用KeepTogether = true添加到段落時,表格消失
- 7. 使表單元素消失與JavaScript
- 8. 登錄表單消失在
- 9. VBA表單正在消失
- 10. CATransform3D使我的UITextView消失?
- 11. Avalon Dock浮動窗口 - ShowInTaskBar
- 12. 如何從我的表單再次顯示消失的圖標?
- 13. 在IE上消失的表單域?
- 14. Python - 表單中的文本消失
- 15. 爲什麼聯繫表單讓我的頁腳消失?
- 16. 我的表單發佈後,jquery消失了嗎?
- 17. 爲什麼我的表單在瞬間消失? VBA
- 18. 使用jQuery動態創建的標籤在我的表單發佈後消失
- 19. 表單字段(unique = true)和(nullable = true)
- 20. 如何使AppBarLayout完全消失,並將windowTranslucentStatus設置爲true
- 21. Firefox使簡單的jquery slidetoggle()消失
- 22. BeginFormSitefinity表單在提交後消失
- 23. jQuery驗證 - 表單成功消失
- 24. 提交表單時圖像消失
- 25. PHP表單提交後消失
- 26. javascript提交表單時會消失嗎?
- 27. 單擊圖標時列表消失
- 28. jQuery克隆表單域消失
- 29. 登錄表單不會消失
- 30. 一次提交後,jquery表單消失
更改ShowInTaskbar有很大的副作用,Winforms必須重新創建窗口。一個錯誤是表單從Application.OpenForms中消失。從來沒有聽說它被隱藏了。查看輸出窗口以查找可能的例外情況。 –