Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Wie kann ich nicht benötigte Events aus der Kommunikation mit Geräte und UI rausfiltern?
chrisrabe
myCSharp.de - Member



Dabei seit:
Beiträge: 22

Themenstarter:

Wie kann ich nicht benötigte Events aus der Kommunikation mit Geräte und UI rausfiltern?

beantworten | zitieren | melden

Hallo Forum,

ich habe seit Jahren immer wieder ein ungelöstes Problem, welches ich nun nach längerer Programmierpause endlich versuchen möchte zu beseitigen - ich denke ich bin auf eine völlig falschen Strategie festgefahren.

Zum Problem:
Ich habe ein Windows Forms Programm, welches die Bedienung von externen Geräten ermöglicht. Die Geräte hängen per Schnittstelle am PC. Als einfaches Beispiel ein Netzteil. Ich möchte nun, dass die Bedienelemente der GUI beim Start des Programmes den Zustand der Hardware abfragen und auf der GUI darstellen (z.B. eingestellte Spannung, eingestellter max. Strom, etc.) Das ist alles kein Thema und funktioniert natürlich.

Über die Controls für Strom und Spannung auf der GUI steuert der Benutzer zur Laufzeit das Netzteil (funktioniert auch), jedoch auch vom Netzteil selbst vorgenommene Änderungen dieser Werte sollen in den Controls richtig gezeigt werden, damit die GUI Anzeige immer mit dem Istzustand am Netzteil übereinstimmt. sprich: Das Control wird vom User als auch vom Programm verändert.

Mein Problem besteht darin, dass bei Änderungen durch das Programm auch die Ereignisse der Controls aufgerufen werden, welche ich für die manuelle Bedienung aufrufe (z.B. Value changed).

Das führt z.B. dazu, dass eine Änderung durch das Netzteil vom Prog erkannt und an das Control weitergereicht wird. Die Änderung des Control feuert das Event, welches nun die neuen Werte an das Netzteil sendet (dieses ist ja aber bereits auf diesen Wert eingestellt)

Ich suche nach einem Weg, der nicht unnötige Events auslöst und keine unnötige Kommunikation auf der Schnittstelle verursacht. Ich bin scheinbar zu festgefahren um selbst auf eine Lösung zu kommen...

Weiß jemand Rat?

Vielen Dank
private Nachricht | Beiträge des Benutzers
Th69
myCSharp.de - Experte

Avatar #avatar-2578.jpg


Dabei seit:
Beiträge: 4026

beantworten | zitieren | melden

Hallo,

s. [FAQ] Event nur bei Benutzeraktion auslösen, nicht bei programmtechnischer Änderung.
private Nachricht | Beiträge des Benutzers
chrisrabe
myCSharp.de - Member



Dabei seit:
Beiträge: 22

Themenstarter:

beantworten | zitieren | melden

Hallo TH69,

vielen Dank. Diesen Beitrag habe ich nicht gefunden.

Grüße
private Nachricht | Beiträge des Benutzers