winformsprogramm zu wpf umwandeln

  • WPF

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von MVN050.

    winformsprogramm zu wpf umwandeln

    moin leute

    ich wollte jetzt mein kleines programmchen, was ich leider mit forms gebaut habeumbauen zu wpf. dabei handelt es sich um eine art chat.
    nun stehe ich aber vor einem problem bei dem ich einfach nicht weiter komme. und zwar...

    wie mache ich da gescheit einen chatverlauf? bei winforms hab ich das ganz gechillt mit einem datagridview gemacht was auch perfekt funktioniert hat... nur bei wpf? was sollte ich dafür am besten nehmen? ein datagrid? (ist das ein datagridview?)
    wenn ich das richtig verstanden habe brauche ich ja für das datagrid ein "bindings" oder? aber wenn ja etwas vom tcp-client empfangen wird is das ja ehr kein bindings mehr oder doch :huh: oder gibt es dafür ein anderes steuerelement? der chatverlauf hat 4 spalten "gruppe,name,avatar,text" und die müsste ich (wie in einer tabelle) immer untereinander bekommen.

    man hört immer das mit in einem wpf-programm keine winforms einbauen sollte aber warum nicht? eine form (optionen) is leider schon etwas komplex geworden und das würde etwas länger zeit in anspruch nehmen die ganze form in wpf umzubauen. kann ich übergangsweisse auch eine form in der wpf-anwendung benutzen (übergangsweisse) oder auf garkeinen fall und lieber auf optionen erstmal verzichten?
    Misch auf keinen Fall WinForms & WPF!
    Außerdem sollten Sachen wie Option-Fenster eigentlich sehr einfach sein:
    Du machst dir ein Model (eine Klasse), welche alle verfügbaren Eigenschaften enthält. Dann machst du das ViewModel, was das Model kapselt und INotifyPropertyChanged implementiert. Zuletzt noch das View (die Oberfläche), welche über Bindings das ViewModel kapselt.
    "Umwandeln" ist nicht. Du musst es neu schreiben und kannst wahrscheinlich nur relativ wenig direkt übernehmen.

    Als Grundprogramm in WPF gilt: MVVM. Kein direkter Kontakt mit Controls! Nicht per Toolbox, per XAML-Editor arbeiten. Außerdem Binding-Picking für weniger Verwirrung, wenn du gerade anfängst.
    „Was daraus gefolgert werden kann ist, dass jeder intelligentere User sein Geld lieber für Bier ausgibt, um einen schönen Rausch zu haben, und nicht dieses Ranzprodukt.“

    -Auszug aus einer Unterhaltung über das iPhone und dessen Vermarktung.
    @nafets3646
    also bei winforms hatte ich einfach nur ein datagridview mit 4 spalten und immer wenn etwas empfangen wurde wurde es als neue zeile ins dgv eingetragen. das was du mir da schreibst klingt ja richtig kompliziert? kann ich nicht einfach eine winforms-controll in wpf einbauen?

    wie würde ich den einfach über ein button etwas ins datagrid einfügen? also eine neue spalte zeile für zeile? irgentwie is das komisch :huh:

    @Lukas
    ja das hab ich schon gehört aber warum? was is der grund warum ich keine forms in wpf einbauen soll?
    Ich würde es aus dem Grund nicht machen, weil beide Techniken eigentlich nicht bzw. nicht gut vereinbar sind. Sicher geht es. Aber eigentlich sehe ich auch gar keinen Grund, das zu machen.
    „Was daraus gefolgert werden kann ist, dass jeder intelligentere User sein Geld lieber für Bier ausgibt, um einen schönen Rausch zu haben, und nicht dieses Ranzprodukt.“

    -Auszug aus einer Unterhaltung über das iPhone und dessen Vermarktung.
    Um gottes willen! Bitte mische niemals winforms mit wpf.
    Du kannst nirgends einfacher als in WPF irgendwelche Nachrichten an die View weitergeben und diese mit nem schönen Template anzeigen. Da reicht auch schon ne ObservableCollection mit irgend ner Nachrichten-klasse drinnen. Die View wird(wenn du alles korrekt machst) überall voll automatisch aktualisiert.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.
    @vb-checker
    ok ich hab mir das video mal angekuckt und ja das könnt vllt brauchbar für mich werden.
    bei mir würde dan die liste "personen" einfach chatverlauf heissen? und stadt name,alter,nachname... bei mir gruppe,avatar,chatname...?
    nur wie mache ich das mit dem bild? das avatar ist ein bild bzw den phat zum bild! müsste ich dan einfach anstatt eine "textbox" eine picturebild (kp ob das bei xaml so heisst) nehmen?

    das würde ich vllt noch hinbekommen aber jetzt hab ich eine frage...
    wenn ich jetzt zb auf "megane fox" drücke müsste ich das alter von ihr als variable haben... bzw bei mir müsste ich dan den gruppennamen als variable haben. weil der gruppenname mit der homepage verbunden ist und man dan direkt auf der homepage die gruppeninfo ansehen kann. ich dachte da jetzt an eine art contextmenü mit einem button "website gruppe" und wenn man draufklickt öffnet sich die website der gruppe. das ganze hat mit datagridview gut funktionier weil ich die einzelnen spalten von der ausgewälten riehe/row ansprechen konnte...

    aber danke das video hat mir weitergeholfen :rolleyes: