zoukankan      html  css  js  c++  java
  • 隧道路由事件

    学习WPF以来,一直以为隧道路由事件是由触发控件向其子控件传递的,见天才知道,原来隧道路由事件是从窗口想当前元素传递的!

    汗颜啊!

    贴上一段示例代码来说明一下:

    <Grid>
            <Border Height="50" Width="250" BorderBrush="Gray" BorderThickness="1" >
                <StackPanel Background="LightGray"
                            Orientation="Horizontal"
                            PreviewMouseLeftButtonUp="StackPanel_PreviewMouseLeftButtonUp"
                            MouseUp="StackPanel_MouseUp">
                    <TextBlock Name="YesTB" Width="50"
                               PreviewMouseLeftButtonUp="YesTB_PreviewMouseLeftButtonUp"
                               MouseUp="YesTB_MouseUp"
                               Background="Blue" >Yes</TextBlock>
                </StackPanel>
            </Border>
        </Grid>

    后台代码:

     private void YesTB_MouseUp(object sender, MouseButtonEventArgs e)
            {
                //MessageBox.Show("button");
                e.Handled = true;
            }
    
            private void StackPanel_MouseUp(object sender, MouseButtonEventArgs e)
            {
                //MessageBox.Show("Panel");
            }
    
            private void YesTB_PreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e)
            {
                MessageBox.Show("buttonPreview");
            }
    
            private void StackPanel_PreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e)
            {
                MessageBox.Show("PanelPreview");
            }

    程序运行效果如图:

    当点击上图中的蓝色区域,首先会弹出“PanelPreivew”对话框,之后才弹出“buttonPreview”对话框。

    学习了!

  • 相关阅读:
    JSTL 配置
    HTML5 移动端web
    PHP 和 AJAX MySQL
    js php 互调
    google F12
    Codechef TRIPS Children Trips (分块、倍增)
    BZOJ 1859 Luogu P2589 [ZJOI2006]碗的叠放 (计算几何)
    AtCoder AGC002E Candy Piles (博弈论)
    BZOJ 2716 [Violet 3]天使玩偶 (CDQ分治、树状数组)
    AtCoder AGC001F Wide Swap (线段树、拓扑排序)
  • 原文地址:https://www.cnblogs.com/my-sky/p/4563101.html
Copyright © 2011-2022 走看看