Przetwarzanie odbieranych danych

0

Witam

Mój aplikacja winforms odbiera dane (liczby, może ich być kilka) z portu COM linia po linii i wyświetla je appendtextem w textboxie. Chciałbym teraz w innej metodzie z tych liczb rysować wykres innym komponentem, czy można stworzyć zdarzenie wywoływane pojawianiem się nowej linii danych w texboxie i w niej parować liczby i dodawać punkty do wykresu? Jakieś pomysły, wskazówki, jak to zorganizować?

0

Po dopisaniu danych do textboxa wywoływany jest event TextChanged. W nim należało by więc parować liczby i dorzucać do wykresu

0

Zgaduję że trzeba użyć args.changes , ale nie mam pojęcia jak, może jakiś przykład wczytania nowej linii?

2

To strasznie dziwny pomysl i robienie na okolo czegos co w zasadzie koncepcyjnie jest dosc proste. Klasa odpowiedzialna za odebranie danych z portu COM powinna wystawiac event z danymi w momencie kiedy odebrana zostanie cala linia i teraz wystarczy tylko podpiac pod ten event dwie metody obslugi - jedna, ktora doda te dane do textboxa jak do tej pory i druga, ktora na ich podstawie zaktualizuje wykres.

Obie te rzeczy sa od siebie niezalezne i troche dziwne jest opieranie aktualizowania wykresu na zmianach w zawartosci textboxa jesli faktycznym zdarzeniem, ktore powinno powodowac te aktualizacje jest odebranie linii z portu. Co zrobisz jak kiedys stwierdzisz, ze wlasciwie ten textbox jest Ci nie potrzebny i wystarczy sam wykres? Ukryjesz textbox zeby nie zmieniac calej logiki czy zrobisz jak nalezy i wszystko przepiszesz od nowa?

0

Masz rację, ale event czy delegację? Metodę, która odbiera dane mam w głównym Formie, więc z czego mam wstawić event?

0

Stwórz sobie event w głownej formie, który zostanie obslużony w formie drugiej. Możesz zastosować jakąś imitacje wzorca MVP na eventach w Winforms. Żeby przekazać dane stwórz sobie klasę która dziedziczy po EventArgs.

1 użytkowników online, w tym zalogowanych: 0, gości: 1