簡體   English   中英

允許點擊和點擊

[英]Allow clicks and click-through's

我在Button有一個Grid (它們都直接在另一個網格上,但Grid在“上方”)。 我需要訂閱Grid某些事件,但仍然可以單擊Button 我將GridBackground設置為Transparent ,以使其引發事件,但是該Button不可點擊。 有沒有辦法讓IsHitTestVisible = true但讓點擊轉到下一個元素?

我首先看看你是否可以將按鈕放在網格上方。 您可以在 XAML 中移動它 - 元素聲明在 XAML 中越往下,z 順序越高。

如果您絕對不能這樣做,您可以覆蓋 UI 元素的 MouseUp 或 MouseDown 方法並控制處理屬性的設置,以允許樹中的后續元素進行點擊。

如果您只想將其限制為特定控件,您可以檢查“OriginalSource”屬性(因為所有這些事件參數都繼承自 RoutedEventArgs)以查看點擊來源並采取相應措施:

protected override void OnMouseDown(MouseButtonEventArgs e)
{
    var grid = e.OriginalSource as Grid;
    if (grid != null && grid.Tag = "yourgridname") e.Handled = false;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM