TabControl 下兩個 TabItem,各包含 Grid 和 Button。在最外層 Grid、TabControl 或 TabItem 綁定 MouseLeftButtonUp,點擊空白處觸發,但點擊內部 Button 時不觸發。
Button 內部處理了鼠標左鍵事件 (如 OnMouseLeftButtonDown 設置 Handled=true),導致事件不再向上冒泡。WPF 路由事件中,Click 是專為 Button 設計的高級事件,已封裝鼠標按下/釋放邏輯。
<Button Click="Btn_Click" />PreviewMouseLeftButtonUp (隧道事件) 或在 Button 樣式/模板中設置 Handled="False" (不推薦,破壞封裝)。void Handler(object sender, MouseButtonEventArgs e) 參數正確,且未在代碼中 e.Handled = true。在父容器處理函數首行打印 e.OriginalSource 確認事件源是否為 Button,若為 Button 說明事件已到達但被標記 Handled。