I usually built a Class Libary within a Windows Forms project. I can test the class by using buttons and textboxes. I send the 'Status' messages to Form1 using a Delegate and Event as illustrated in the code example below. The problem arises when deploying the Class Libarary to be used with another executable. The unused Delegate causes an 'Object Reference' error if it's not instanctiated in the new executable. I want the option for class library status message returns if needed, but don't want to demand the delegate instanciation.
[class library (.dll)]
public delegate void JobManagerStatusEventHandler(string statusMessage);
public static class JobSetup
public static event JobManagerStatusEventHandler StatusMessage;