Du kannst im gleichen Ordner, in dem die Komponente liegt, ein Bild mit dem Namen DeineKomponente.bmp anlegen. Darauf zielt der Kontruktor von TollBoxIconAttribute ab, der nur einen Parameter vom Typen System.Type schluckt. Dieser Datei verpasst du die Build action "embedded resource" (siehe screenie rechts oben, dort ist die Component1.bmp gerade selektiert).
Der Kompiler wird die Datei dann automatisch als Resource in deine Assembly kompilieren, wobei er den Default namespace deiner assembly als Präfix nutzt.
In meinem Beispiel wurde aus "Component1.bmp" "
DP.ToolBoxIconSample.Lib.Component1.bmp".
Zitat:
Was genau meinst Du mit
explizit registrierst und
VS? VisualStudio - nein, sondern Borland-
IDE. Registrierung durch Komponente | Installierte NET-Komponente (ggf. Assembly hinzufügen)
Ich meinte das Gegenstück davon im VS, also nicht dass er sie von alleine in die Toolbox holt wenn du das Projekt öffnest. Ich habe mal die gleichen Dateien benutzt, die ich damals in dem anderen Thread benutzt habe. Diesmal habe ich die Komponenten aber nicht explizit registriert sondern sie autom. von der
IDE in die Toolbox ziehen lassen. Wie du im Screenie siehst hat man dann dort keine Icons, im Designer aber schon.
Zitat:
zeigt nur das Zahnrad; wenn ich die Komponente in der Assembly prüfe (z.B. durch Reflection), wird mir der richtige Dateiname *.bmp angezeigt.
Schaue mal mit dem Reflector (nicht mit dem Viech, das im
BDS mitgeliefert wird) wie die Resource des Bildes heißt. Vllt kannst du einen Screenie davon anhängen? (Ich habe den von meiner Lib mal hier ebenfalls angehängt, das Gegenstück dazu wäre dann von dir notwendig um dir weiterhelfen zu können)