Aşağıdaki kod göz önünde titrediği: Ben bu kod hattını arayın.Net WinForms uygulaması: Form Form.ShowInTaskbar değeri değişen
Me.ShowInTaskbar = Not ShowInTaskbar
Everytime form zaman küçük bir süre için titrer (muhtemelen bağlıdır Birçok kontrol formundadır).
Tamam, neden bunu en başta yürütmek istiyorum?
Temelde, bazı iletişim biçimlerini göstermek için kullandıkları bir ana form var ve ben görev çubuğunda tek bir tıklama ile her iki formları (ana & iletişim) geri/minimize etmek isterler, bu yüzden kullanıyorum Bu kod: formu haricinde Şimdi
Private Sub frmDialog_Resize(sender As Object, e As System.EventArgs) Handles Me.Resize
frmMain.Visible = Me.WindowState <> FormWindowState.Minimized
End Sub
, her şey iyi çalışır: iletişim formu yılında
Dim dialogForm As New frmDialog
Me.ShowInTaskbar = False
dialogForm.ShowDialog(Me)
Me.ShowInTaskbar = True
Ve ShowInTaskbar
özelliğini etkinleştirdiğimde/devre dışı bıraktığımda her seferinde titriyor (bu benim için her iletişim formunu etkileyeceğinden dolayı çok önemlidir).
Bunun olmasını önlemek için herhangi bir yolu var mı? veyaShowInTaskbar
özelliğine dokunmadan en aza indirgeme/geri yükleme işlerini halletmenin başka bir yolu var mı?
(Bunu tartışan bazı konular buldum ama kullanışlı bir çözüm bulamadım).
Not:Ben ana formu gizlemek veya tıklanabilir yapmak istemiyorum.
İlgisiz ama neden boyutlandırma olay üzerine kontrol edecek Pencere durumu değişiklikleri için özel bir tane var –
Bunun için belirli bir olay var mı? Hangisi?! –
Windows, pencere durumu değiştiğinde WM_SYSCOMMAND formunuza gönderecek, WndPrc'yi geçersiz kılacak ve bu komutu SC_MINIMIZE, SC_MAXIMIZE ve SC_RESTORE için wParam ile kontrol edecektir. –