La forma más fácil de asegurarse de que un icono de la barra de herramientas aparecerá es crear un archivo BMP 16x16, lugar que en la carpeta de proyectos de su control, a continuación, configurarlo como un recurso incrustado.
Sigamos un ejemplo relativamente simple: Supongamos que tiene un componente llamado MyCompany.Components.MyControl. Crear un mapa de bits de 16x16 una guardarlo en la raíz de la carpeta del proyecto MyCompany.Components.MyControl como MyControl.bmp. A continuación, haga clic con el botón derecho en el archivo MyControl.bmp y seleccione Propiedades> Acción de compilación> Recurso incrustado. En ese punto, tiene un paso más: agregue el atributo ToolboxBitmap encima de la definición de su clase (si utilizo clases parciales, ubico el atributo en el archivo .cs principal del control, no en el archivo Designer.cs). Para ello, utilice la siguiente sintaxis:
[ToolboxBitmap(typeof(MyControl), "MyControl.bmp")]
estar absolutamente seguro de que:
- El espacio de nombres para su clase de proyectos MyControl coincide con la estructura de carpetas para su proyecto, donde aparece en la solución.
- Puede parecer obvio, pero asegúrese de haber citado el nombre correcto para su archivo bmp.
Su mapa de bits debe aparecer cada vez que su control se agrega a una caja de herramientas, ya sea que se agregue manualmente o se agregue mediante programación.
Solo para FYI: este tipo de controles son Web Custom Controls (WCC), no Web User Controls (WUC). Los WUC son archivos ascx que se utilizan en todo el proyecto web, el WCC se usa en toda la máquina ... Por lo tanto, en su caso, debe escribir WCC en su pregunta, solo para no confundir a los demás. –
No sé de qué estás hablando. Esto es System.Windows.Forms.ErrorProvider. –
Si proporciona una ruta de acceso "codificada" al mapa de bits (ToolboxBitmap ("c: \\ my.bmp") ¿todavía muestra el mapa de bits predeterminado? –