• 事件一二


     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.Windows.Forms;
     9 
    10 namespace DelegateTest
    11 {
    12     public partial class Form1 : Form
    13     {
    14         public Form1()
    15         {
    16             InitializeComponent();
    17         }
    18         public delegate void DrawGeoObjectDelegate(GeoFileds geoFileds, object obj);
    19         public event DrawGeoObjectDelegate DrawGeoObjectEvent;
    20         test test = null;
    21         private void Form1_Load(object sender, EventArgs e)
    22         {
    23              test = new test(this);
    24         }
    25 
    26         private void button1_Click(object sender, EventArgs e)
    27         {
    28             if (DrawGeoObjectEvent!=null)
    29             {
    30                 GeoFileds geo = new GeoFileds();
    31                 geo.LayerName = "nihao";
    32                 DrawGeoObjectEvent(geo,sender);
    33             }
    34         }
    35 
    36         private void button2_Click(object sender, EventArgs e)
    37         {
    38             test.Remove();
    39             if (DrawGeoObjectEvent == null)
    40             {
    41                 MessageBox.Show("委托清空");
    42             }
    43            
    44         }
    45     }
    46     public struct GeoFileds
    47     {
    48         public string LayerName;
    49         public string ClassifyName;
    50         public string GeoName;
    51         public int GeoCode;
    52         public string BZ;
    53         public string IconPath;
    54         public Color lineColor;
    55         public double lineWidth;
    56         public Color fillColor;
    57         public Dictionary<string, string> ExtField;
    58     }
    59 }
     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 using System.Windows.Forms;
     6 
     7 namespace DelegateTest
     8 {
     9     class test
    10     {
    11         Form1 frm = null;
    12         public test(Form1 frm1)
    13         {
    14             frm = frm1;
    15             frm.DrawGeoObjectEvent += new Form1.DrawGeoObjectDelegate(frm_DrawGeoObjectEvent);
    16         }
    17 
    18         void frm_DrawGeoObjectEvent(GeoFileds geoFileds, object obj)
    19         {
    20             MessageBox.Show("图层:"+geoFileds.LayerName);
    21 
    22         }
    23         public void Remove()
    24         {
    25             frm.DrawGeoObjectEvent -= new Form1.DrawGeoObjectDelegate(frm_DrawGeoObjectEvent);
    26         }
    27     }
    28 }
  • 相关阅读:
    什么是封装?
    table
    POM文件
    Maven环境的搭建
    什么是maven
    J2EE的三层经典结构
    DOM对象和jQuery对象对比
    jQuery常用选择器分类
    什么是JQuery?它的特点是什么?
    jQuery准备函数语法
  • 原文地址:https://www.cnblogs.com/yhlx125/p/3186093.html
Copyright © 2020-2023  润新知