Forum: PC-Programmierung Erstellen einer Componente in C#


von Micha (Gast)


Lesenswert?

Hallo

Ich habe eine Frage:

Und zwar wie kann ich im Visual Studio eine Componente wie z.B. den 
Serialport selbst erstellen?

Damit meine ich jetzt nicht ein UserControl, sondern so einen Baustein 
wie z.b. die SerialPortKlasse die man "hineinziehen" kann und dann unten 
so ein serialport icon hat und über diese die Properties ändern kann und 
eventhandler erzeugen usw.???

bitte um eure hilfe!

sg

von Uhu U. (uhu)


Lesenswert?

Indem man eine Klasse schreibt, die eine serielle Schnittstelle öffnet - 
das ist im Prinzip ein File - und Operationen wie Write, oder Read als 
öffentliche Memberfunktionen bereitstellt.

Properties lassen sich implementieren, indem man für öffentliche Members 
get- und set-Funktionen definiert. Diese Funktionen können natürlich 
auch Zustände der seriellen Schnittstelle abfragen, oder ändern.

von Arc N. (arc)


Lesenswert?

Man kann seine eigene Komponente/Klasse von Component ableiten...

von Micha (Gast)


Lesenswert?

>>Man kann seine eigene Komponente/Klasse von Component ableiten...

Ja soviel hab ich auch schon herausgefunden, aber wie kann ich das Ding 
so compilieren dass ich es dann der Toolbox hinzufügen kann?

schöne Grüße

von Arc N. (arc)


Lesenswert?

Micha wrote:
>>>Man kann seine eigene Komponente/Klasse von Component ableiten...
>
> Ja soviel hab ich auch schon herausgefunden, aber wie kann ich das Ding
> so compilieren dass ich es dann der Toolbox hinzufügen kann?
>
> schöne Grüße

Wenn man z.B.
1
using System;
2
using System.ComponentModel;
3
namespace Test {
4
    public class TestComponent : Component {
5
        public TestComponent() {
6
        }
7
    
8
        public int TestGetSet { get; set; }
9
    }
10
}

schreibt und die Solution neu erstellt, taucht es automatisch in der 
Toolbox auf.
Ist es in einer separaten DLL/EXE, kann man das z.B. direkt der Toolbox 
hinzufügen (rechte Maustaste in der Toolbox -> Choose Items -> Browse).

von Micha (Gast)


Lesenswert?

Ja so gehts ;)
Danke!!!

von Ralf (Gast)


Lesenswert?

Da würd mich noch folgendes interessieren: Wie/wo kommt dann das Icon 
hin, welches in der Toolbox angezeigt wird?

Ralf

von Arc N. (arc)


Lesenswert?

Ralf wrote:
> Da würd mich noch folgendes interessieren: Wie/wo kommt dann das Icon
> hin, welches in der Toolbox angezeigt wird?
>
> Ralf
1
using System;
2
using System.ComponentModel;
3
using System.Drawing;
4
5
namespace Test {
6
   // bei einer eingebetteten Resource 
7
   [ToolboxBitmap(typeof(TestComponent), "Resources.ImageName.bmp")]
8
   public class TestComponent : Component {
9
        public TestComponent() {
10
        }
11
    
12
        public int TestGetSet { get; set; }
13
    }
14
}

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.