using System.ComponentModel;
throw new Exception("Ah!");
public static void Main(string[] args)
Console.WriteLine("===PropertyDescriptor.SetValue====");
PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(t);
var desc = properties.Find("Name", false);
desc.SetValue(t, "Fail");
Console.WriteLine(e.ToString());
Console.WriteLine("\n\n\n===Direct setter====");
Console.WriteLine(e.ToString());