• C# winform间窗体传值简单Demo


    form1是用来接收值的

     1 using System;
     2 using System.Collections.Generic;
     3 using System.ComponentModel;
     4 using System.Data;
     5 using System.Drawing;
     6 using System.Linq;
     7 using System.Text;
     8 using System.Threading.Tasks;
     9 using System.Windows.Forms;
    10 
    11 namespace DelegateEventDemo
    12 {
    13     public partial class Form1 : Form
    14     {
    15         public Form1()
    16         {
    17             InitializeComponent();
    18         }
    19         Form2 f2 = new Form2();
    20         private void Form1_Load(object sender, EventArgs e)
    21         {
    22             this.Text = "接收值";            
    23             f2.DelegateEvent += new Form2.DelegateMessage(GetText);
    24         }
    25         private void GetText(string msg)
    26         {
    27             this.textBox1.Text = msg;
    28         }
    29 
    30         private void button1_Click(object sender, EventArgs e)
    31         {
    32             f2.Show();
    33         }
    34     }
    35 }
    Form1代码

    form2是发送值的

     1 using System;
     2 using System.Collections.Generic;
     3 using System.ComponentModel;
     4 using System.Data;
     5 using System.Drawing;
     6 using System.Linq;
     7 using System.Text;
     8 using System.Threading.Tasks;
     9 using System.Windows.Forms;
    10 
    11 namespace DelegateEventDemo
    12 {   
    13     public partial class Form2 : Form
    14     {
    15         public Form2()
    16         {
    17             InitializeComponent();           
    18         }
    19 
    20         public delegate void DelegateMessage(string txt);//声明一个委托
    21         public event DelegateMessage DelegateEvent;//声明委事件
    22 
    23      
    24         private void Form2_Load(object sender, EventArgs e)
    25         {
    26             this.Text = "传值窗体";
    27         }
    28 
    29         private void button1_Click(object sender, EventArgs e)
    30         {
    31             DelegateEvent(this.textBox1.Text);               
    32         }      
    33     }
    34 }
    From2代码

    1.委托是把方法当做参数一样使用

    a)委托(int a,int b)

        方法(int a,int b)

       {

        return a+b;

        }

      委托  委托对象=new 委托(方法名);

      int sum=委托对象(5,3);

      结果 sum=8;

  • 相关阅读:
    安卓给DatePicker设置选择日期后的监听
    Linux端口相关一些命令
    安卓使用Zxing创建二维码
    vue中this.$router.push()路由跳转和传参
    C# 获取请求头中包含指定元素的值
    各种JSON格式数据
    SQL 中 char、nchar、varchar、nvarchar 的区别
    vue中表单修饰符
    vue 中的export 、 export default 和 new Vue({})
    String or binary data would be truncated.
  • 原文地址:https://www.cnblogs.com/gudanshiyigerendekuanghuan/p/5741331.html
Copyright © 2020-2023  润新知