我创建了一个类,当我通过表单创建一个员工对象时,我想给出一个消息;
这是我的班级,活动和代表
public delegate void ctorDel(); 
class Employee
{
    private int empID;
    private string empName;
    public event ctorDel myEvent;
    public Employee(int empID,string empName)
    {
        this.empID = empID;
        this.empName = empName;
        **if (myEvent != null)
        {
            myEvent();
        }**
    }
并以形式
  int id = Convert.ToInt16(textBox1.Text);
            string name = textBox2.Text;
            Employee emp = new Employee(id, name);
            emp.myEvent += new ctorDel(showMessage);
和功能
 public void showMessage()
        {
            MessageBox.Show("An employee is created");
        }
你想要完成的是什么?您尝试过的原因不起作用是因为您在ctor之后附加了您的代表.一旦你打电话给"新员工",事件就会被解雇.
如果您确实需要这样的事件,请创建一个工厂类:
public delegate void EmpCreated();
public EmployeeFactory {
  public event EmpCreated myEvent;
  public Employee Create(int empId, string empName){
    var result = new Employee(empId, empName);
    if(myEvent != null) myEvent();
    return result;
  }
}
订阅工厂类的活动,您将获得活动.