我的工作包含程序(除其他事項外)一個WPF窗口,我現在用的是下面的代碼到它在MouseDoubleClick事件最大化:有關的Windows Presentation Foundation(C#)的一些問題
this.WindowStyle = WindowStyle.None;
this.WindowState = WindowState.Maximized;
this.Topmost = true;
現在,我想要做的是,當窗口最大化並且鼠標退出屏幕(轉到屏幕底部,直到它退出屏幕)時,會在屏幕底部出現一個新窗口(WPF或WindowsForm ),它將包含幾個東西(按鈕,滾動條等),並且只有在鼠標懸停時纔會激活(就像在BSplayer中一樣)。我的問題是如何做到這一點?我真的是WPF的入門者,我不知道XAML,我寧願盡我所能地使用C#代碼。 所以:我怎麼知道鼠標何時離開屏幕,以及如何讓窗口出現在屏幕的底部(而不用最小化或對原始窗口做任何其他操作)? 我嘗試使用this.MouseLeave,但它在窗口最大化時不起作用。
如果我在這裏問這個問題,我會用我的機會,也要求其他兩件事情:
- 當WPF窗口最大化,如果鼠標沒有被移動超過5秒,比我想讓鼠標隱藏起來,只有當鼠標移動時才能再次顯示。我該怎麼做呢 ?
- 當WPF窗口沒有最大化時,我希望屏幕的邊界非常小,幾乎看不到(最小化,關閉或其他按鈕)。我使用this.WindowStyle = System.Windows.WindowStyle.ToolWindow,但它仍然保留退出/關閉按鈕;如果我使用this.WindowStyle = System.Windows.WindowStyle.None它看起來很完美,但後來我無法移動窗口。無論如何,我可以用WindowStyle.None使窗口移動嗎?最好是,當我將鼠標按在屏幕內部時,我希望能夠在屏幕上拖動WPF窗口。
真的需要幫助解決這些問題。這是我正在研究的一個非常重要的項目。
'這是一個非常重要的項目,我正在努力。' - 如果項目很重要,您寧願學習XAML而不是避免它。 –
@TheQuestioner要切換「BSplayer」窗口的可見性,您可以使用樣式觸發器或將其綁定到VM。 HighCore說,它們可以在非常初級的程度上編程。如果你每天工作,Xaml的學習曲線約爲5周。 –
一次有一個問題。所以不清楚。和「鼠標存在」。只是鼠標不存在?我知道你是新來的,但你需要清理問題或者關閉。 – Paparazzi