• WPF(二)路由事件3.附加事件


    假设在StackPanel面板中包含了一堆按钮,并且希望在一个事件处理程序中处理所有这些按钮的事件,一种办法是每个按钮的Click事件关联到同一个事件处理程序。还有一种更简单的办法,可以通过处理更高元素的Click事件来处理所有按钮的单击事件。

            <StackPanel Button.Click="DoSomething" Margin="5">
    <Button Name="cmd1">Button1</Button>
    <Button Name="cmd2">Button2</Button>
    <Button Name="cmd3">Button3</Button>
    <Button Name="cmd4">Button4</Button>
    </StackPanel>


    如果想判断是哪一个按钮被点击,可以根据按钮的Name属性进行判断

            private void DoSomething(object sender, RoutedEventArgs e)
    {
    if (sender == cmd1)
    {
    //code
    }
    else if (sender == cmd2)
    {
    //code
    }
    else if (sender == cmd3)
    {
    //code
    }
    else if (sender == cmd4)
    {
    //code
    }
    }


    还有一种办法可以根据按钮的Tag属性进行判断,必须要设置tag的值

            private void DoSomething(object sender, RoutedEventArgs e)
    {
    object tag = ((FrameworkElement)sender).Tag;
    }



  • 相关阅读:
    jQuery获取各种标签的文本和value值
    python中base64编码与解码
    Django 的 slug url 正则匹配
    JavaScript base64 加密解密
    HTML引入外部JS文件
    CSS样式的引入方式
    Django 配置404页面
    selenium 基本操作
    python 启动pydoc查看文档
    selenium webdriver
  • 原文地址:https://www.cnblogs.com/WilliamJiang/p/2340775.html
Copyright © 2020-2023  润新知