gemeinsame Propertys und Events für mehrere Klassen

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    gemeinsame Propertys und Events für mehrere Klassen

    Ich habe in einer Klassendatei mehrere Klassen programmiert. Dies basieren auf Textbox, Combo und Checkbox. Es kommen noch weitere hinzu.
    Alle Klassen haben identische Propertys und Events.
    Z.B.
    - die Eigenschaft und Ereignisprozedur "EnterAlsTab" also Enter und Cursortasten in Tab umsetzen.
    - das Event "geändert", daß mir erleichtert in der Anwendung ein Speicherflag zu pflegen.
    - dazu BoundDataTable für Bindung
    und diverse andere Dinge.

    Bisher kopiere ich diese Dinge in jede Klasse.
    Inherits darf nur einmal verwendet werden.
    Mit nem Module krieg ich auch keine Propertys oder Events nach draußen.

    Es muß doch möglich sein.

    Was ist das Zauberwort?

    Gruß André
    Ne gibt keine wirklich schöne Lösung. In bestimmten Fällen kann man mit Aspekt orientierter Programmierung etwas aushelfen(ist jedoch eher etwas für Fortgeschrittene) und ansonsten halb durch Ableiten was in deinem Fall nicht möglich ist. Das einzige womit du die Klasse somit verbinden kannst sind interfaces, was jedoch die kopierte Implementierung trotzdem notwendig macht. Was du natürlich auch kannst(wovon aber meistens abzuraten ist), ist gewisse Teile in andere Klassen auszulagern.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.
    gemeinsame Funktionalität kann man schon in eine Extra-Klasse auslagern, grad sone Event-Manipulation - in Wpf kennt man das als Behavior.

    vom prinzip her codeste da einen Eventhandler, der mw. Enter mit Tab austauscht (wenn das geht - weiß ich garnet), und den kann man an die Events aller dieser Controls hängen.

    Kommt aber drauf an, ob das geht, und auch, ob sich das lohnt.