Erstellen einer Componente in C#

Gast #878955
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
#878993
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.
Gast #880530
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
#880837
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).
#882056
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
}

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren