zoukankan      html  css  js  c++  java
  • C#将方法作为参数传递(用委托接收方法)


    1、声明委托

    public delegate void DataCallBackEventHandler(string str);

    2、按照委托结构(参数和返回值)写一个回调方法

    public void DataCallBackEvent(string str)

    {

        label1.Text = "委托传回的消息:" + str;

    }

    3、将方法作为参数进行传递

    private void btnTestDelegate_Click(object sender, EventArgs e)

    {

        Form3 frm3 = new Form3(DataCallBackEvent);  //函数名称

        frm3.Show();

    }

    4、构造函数中接收此方法

    //声明委托用来接收方法

    DataCallBackEventHandler _dataCallBackEvent;

    public Form3(DataCallBackEventHandler dataCallBackEvent)   //函数参数类型是委托

    {

        InitializeComponent();

        //用委托接收方法

        _dataCallBackEvent = dataCallBackEvent;

    }

    5、调用方法

    //传回字符串+时间

    if (_dataCallBackEvent!=null)

    {

        _dataCallBackEvent(textBox1.Text+DateTime.Now.ToString("yyyy-dd-hh-mm.fff"));   //通过委托变量调用函数

    }

     

  • 相关阅读:
    简化单例模式
    static
    单例模式之懒汉模式
    Car race game
    poj-2403
    poj-2612
    poj-1833
    poj--2782
    poj--2608
    poj--3086
  • 原文地址:https://www.cnblogs.com/wfy680/p/12379853.html
Copyright © 2011-2022 走看看