委托复习【C#】

原因:

主窗体内,新建子窗体后;

主窗体可以调用子窗体的【属性】【方法】等;

但是子窗体内无法调用主窗体的【属性】【方法】。

解决办法:

只有全局的属性和方法,才能被任意调用。

所以,2个窗体相对公共区定义委托就行。一般以子窗体内定义

namespace CAN_namespace
{
    public class Help_CAN_ZHCX : IFace_RTX  // ZHCX 珠海创芯科技有限公司
    {//作者qq750273008 祁成  更新日期:2024/3/9


        //1申明委托》委托命令
        public delegate void WT_GET_Data<T>(T ciA402);//↑ui显示发送命令
        public delegate void WT_SET_Data(byte[] bytes, string data);//↓下执行对象

      
       public WT_GET_Data<VCI_CAN_OBJ[]> Wt_get;//↑event委托=》呼叫上ui层  让上层显示:发送命令
  
       public WT_SET_Data Wt_set;//↓委托=》呼叫下位机执行
 

然后子窗体内呼叫:

      if (num > 0)// CAN1接收帧数
      {
          Obj = obj;
          Wt_get?.Invoke(obj);


          return num;

主窗体的绑定:

     private void Form1_Load(object sender, EventArgs e)
     {
         can.Wt_get += wt;
     }

     private void wt(VCI_CAN_OBJ[] ciA402)
     {
        // throw new NotImplementedException();
     }

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值