我有一個WrapPanel,它有一個按鈕作爲子元素。 WrapPanel和Button都定義了PreviewMouseLeftButtonDown事件。爲什麼wrappanel事件在孩子的事件之前發生?
我注意到,當我點擊Button時,WrapPanel的事件在Button的事件之前被觸發。無論如何要改變這一點?
我有一個WrapPanel,它有一個按鈕作爲子元素。 WrapPanel和Button都定義了PreviewMouseLeftButtonDown事件。爲什麼wrappanel事件在孩子的事件之前發生?
我注意到,當我點擊Button時,WrapPanel的事件在Button的事件之前被觸發。無論如何要改變這一點?
由於Preview*
事件是tunneling,它們從根部到源行進,所以它們的面板,這是更接近根,第一上凸起。使用冒泡版本(MouseLeftButtonDown
)使事件向上移動。
當您設置IsHItTestVisible到假然後鼠標觸發像一個點擊事件將被忽略的財產。
非常感謝!這有助於很多! –
@ B-Rad:很高興幫助,如果這回答了你的問題,你可以[接受](http://meta.stackexchange.com/questions/5234)它。 –