private static void createImageToActivity(AttributeTableBuilder builder, System.Resources.ResourceReader resourceReader, Type builtInActivityType) { System.Drawing.Bitmap bitmap = getImageFromResource(resourceReader, builtInActivityType.IsGenericType ? builtInActivityType.Name.Split('`')[0] : builtInActivityType.Name); if (bitmap != null) { Type tbaType = typeof(System.Drawing.ToolboxBitmapAttribute); Type imageType = typeof(System.Drawing.Image); ConstructorInfo constructor = tbaType.GetConstructor(BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { imageType, imageType }, null); System.Drawing.ToolboxBitmapAttribute tba = constructor.Invoke(new object[] { bitmap, bitmap }) as System.Drawing.ToolboxBitmapAttribute; builder.AddCustomAttributes(builtInActivityType, tba); } }
public static void AddToolboxIcon(Type activityType, System.Drawing.Bitmap bitmap) { try { AttributeTableBuilder builder = new AttributeTableBuilder(); if (bitmap != null) { Type tbaType = typeof(System.Drawing.ToolboxBitmapAttribute); Type imageType = typeof(System.Drawing.Image); ConstructorInfo constructor = tbaType.GetConstructor(BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { imageType, imageType }, null); System.Drawing.ToolboxBitmapAttribute tba = constructor.Invoke(new object[] { bitmap, bitmap }) as System.Drawing.ToolboxBitmapAttribute; builder.AddCustomAttributes(activityType, tba); } MetadataStore.AddAttributeTable(builder.CreateTable()); } catch { } }