WPF Oder Forms ?

  • VB.NET

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von Renati.

    WPF Oder Forms ?

    Hallo

    Ich wird gerne mal von euch wissen, womit ihr programmiert.

    Mit WPF Anwendung oder mit Forms ?

    vllt. sogar beides ?

    Was ist für ein anfänger besser geeignet ?
    Ich denk mal beides zu können kann nicht schaden, nur womit anfangen ?

    Hab mir mal das Buch Visual Basic 2008 von Michael Kofler gekauft (Grundlagen,ADO.NET _ Windows Presentation Foundation) Leider hab ich erst beim Lesen bemerkt,
    dass das Buch auf WPF Aufgenaut ist, ist zwar ein eBook für Forms dabei, nur weiß ich jetzt nicht was wirklich besser ist, und vllt auch sinnvoller wer vorzuziehen

    Naja da wurde ein direkt von anfang an klar gemacht, dass beides seine vor und nachteile hat.

    Jetzt bin ich ein bissen durcheinader WPF soll laut Buch die zukunft in Vb sein wen ich das richtig gelsen hab.

    Was sagt ihr dazu ?
    Bei WPF wird die gleiche Programmiersprache benutzt nur ist der unterschied das es für die Elemente einer WPF-GUI
    andere Eigenschaften gibt und halt die unterschiede der gui =)... z.b:

    Spoiler anzeigen

    VB.NET-Quellcode

    1. 'vb.net mit windows forms
    2. Public Class Form1
    3. Dim WithEvents TextBox1 As New TextBox
    4. Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
    5. 'configure textbox1
    6. TextBox1.Text = "Hello World"
    7. End Sub
    8. End Class


    VB.NET-Quellcode

    1. 'wpf form
    2. Public Class WPF_Form
    3. Dim WithEvents TextBox1_WPF As New TextBox
    4. Private Sub Form_Load(ByVal sender As Object, ByVal e As System.EventArgs) handles MyBase.Load
    5. TextBox1.Caption = "Hello World!"
    6. End Sub

    der private sub konnte ich nicht überprüfen bei fehlern bitte melden!


    hoffe ich konnte dir helfen ;)

    mfg Tim =)

    "Blackbird88" schrieb:

    Jetzt bin ich ein bissen durcheinader WPF soll laut Buch die zukunft in Vb sein wen ich das richtig gelsen hab.

    Auch wenn ich den Kofler als Buchautor sehr zu schätzen weiß, diese Aussage ist Mumpitz. Die WinForms werden von Microsoft genau so weiterentwickelt und supportet wie WPF. WPF soll auch keine Ablösung zu WinForms sein.

    Für Programmieranfänger deutlich leichter einzusetzen sind die WinForms. Allerdings sehen damit die Anwendungen im Klickibunti-Wahn von Vista und 7 teilweise etwas altbacken aus. Das tut aber der Funktionalität keinen Abbruch. Nur leider verführt es gerade Anfänger dazu, allen Code immer direkt mit dem Code der grafischen Oberfläche zu verknüpfen. Dies sollte man ja aufgrund besser Wartbarkeit vermeiden.
    Das WPF-Prinzip läßt einem deutlich mehr Gestaltungsmöglichkeiten und spricht vor allen Dingen Webprogrammierer (im speziellen ASP bzw. ASP.NET-Programmierer) an. Hier ist man gezwungen Darstellungs- und Geschäftslogik zu trennen. Das erlaubt es z.B. ohne viel Querelen Designer die Oberfläche (am besten mit dafür gedachten Tools wie Expression Blend) und Programmierer die Logik dahinter (z.B. mit Visual Studio) entwickeln zu lassen. Zudem ist der Schritt von WPF-Anwendungen auf dem Desktop zu Silverlight-Anwendungen im Browser ein sehr kleiner.

    Letztendlich ist es von persönlichen Vorlieben und Projekterfordernissen abhängig, was von beidem man nutzen sollte. Solange Du noch Probleme mit den Programmiergrundlagen hast, würde ich allerdings bei WinForms bleiben, da es insgesamt doch leichter zu benutzen ist (und ohne Software wie Expression
    Blend macht die Oberflächenerstellung mit VS bisher keinen wirklichen Spaß).

    Gruß FatFire

    FatFire schrieb:

    "Blackbird88" schrieb:

    Jetzt bin ich ein bissen durcheinader WPF soll laut Buch die zukunft in Vb sein wen ich das richtig gelsen hab.

    (und ohne Software wie Expression
    Blend macht die Oberflächenerstellung mit VS bisher keinen wirklichen Spaß).

    Gruß FatFire

    Muss ich dir wirklich zustimmen =)
    ich benutze die Expression Blend 4 Ultimate und ohne die würde ich nie mit wpf arbeiten ;)
    Hier mal meine releaste wpf collection :
    [Beta] [OpenSource] FormDesign

    mfg Tim ;)
    Hi, Ich nutze weder den Designer noch Wpf. Die Controls generiere ich meißt zur Laufzeit. Ausser es sind sooo kleine Tools, das sich das erstellen nicht lohnt dann nutze ich den Designer.
    WPF ist zwar megatollschönsexygeil und alles weiter. Aber ich hab nicht das große bedrüfnis mich in den nächsten Wochen nochmal umzulernen.
    Also ich habe auch irgendwo mal gelesen, dass WinForms nicht mehr weiterentwickelt wird,
    und WPF die Forms irgendwann mal ablösen solle... oder so stellt es MS sich zumindest vor.

    Ich meinte, es war im c't, bin aber nicht mehr sicher...

    FatFire schrieb:

    Die WinForms werden von Microsoft genau so weiterentwickelt und supportet wie WPF. WPF soll auch keine Ablösung zu WinForms sein.

    Das stimmt so nicht. WinForms wird zwar weiterhin unterstützt, weiterentwickelt wird da aber nichts mehr. Die Plattform ist für Microsoft ausgereift und die Zukunft ist ganz klar WPF. WinForms wir halt nur nicht sofort fallen gelassen.
    Wenn du schon mal HTML und CSS benutzt hast, wirst du dich schnell in WPF einfinden. Es ist allerdings falsch, dass WPF schwieriger zu erlernen ist als WinForms. Wer so etwas sagt, denkt dabei immer an Dinge, die man mit WinForms sowieso nicht direkt machen konnte.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Renati“ ()

    WinForms wird zwar weiterhin unterstützt, weiterentwickelt wird da aber nichts mehr.

    Hmm, ja, das ist das was Microsoft mal wieder offiziell sagt. Und hintenrum machen sie was anderes. 2007 wurde verkündet, die WinForms werden nicht mehr weiterentwickelt. Im Herbst 2008 kam dann auf einmal das MS Chart Control heraus. Zuerst nur optional, ab Framework 4.0 wurde es dann auf einmal offiziell ins Framework integriert. Ein Control für ASP.NET und Windows Forms...aber nicht WPF. Sonderbar. Aber stimmt, das ist eine Erweiterung und nicht Weiterentwicklung. Generell kommen im Moment natürlich ganz viele Entwicklungen nur für WPF und nicht WinForms (klar, WPF ist neu und cool und hat noch viel zu wenig Funktionsumfang für seinen Ruf).

    Sicherheitslöcher werden in Windows Forms übrigens noch genauso lange gestopft wie in WPF. Mag sein, dass WPF-Support irgendwann verlängert wird und Windows Forms nicht. Aber momentan sieht man da noch kein klares Statement von Microsoft à la "WinForms muss weg" (zumindest laut dieser Quelle, immerhin eine Microsoft-Präsentation).
    Nur einfache Bugs werden nicht behoben. Das hat aber nichts mit der "Windows Forms wird nicht weiterentwickelt"-Aussage zu tun, sondern sie wollen nicht Tausende Programmierer vor den Kopf stoßen, die viele tausende Programme mit funktionierenden Workarounds betreiben, die nach einem Patch eventuell nicht mehr funktionieren. Da wird es lieber billigend in Kauf genommen, dass neue Programme eben auch mit Workarounds arbeiten müssen (nicht wenige dieser Bugs sind übrigens in der Visual-Basic-Compatibility-Layer zu finden).
    Also leider kann man die Aussage "WPF ist die Zukunft, WinForms sind tot" nicht einfach propagieren und damit alle Diskussionen vom Tisch wischen. Aber die Diskussionen werden ähnlich ja schon seit 8 Jahren mit "MFC vs. WinForms" geführt. Und die MFC gibt es auch immer noch.

    Hab mich jetzt dazu entschlossen mit WPF weiter zu machen, wenns die zukunft ist, denki ich mal werd ich damit nichts falsch machen.

    Gute Entscheidung, stell Dich allerdings auf ein bisschen Lernarbeit ein. Neben der Programmiersprache wirst Du auch Xaml lernen müssen und wenn Du noch nicht mit XML gearbeitet hast, damit auch die Eigenarten von diesem. Trotzdem: es lohnt sich. Und ich wollte Dir Deine Entscheidung mit oben genanntem bestimmt nicht madig machen oder Dich von WinForms überzeugen. Wollte nur zeigen, dass es eben doch deutlich komplexer ist, als hier einige denken.

    Gruß FatFire
    Das Chart Control konnte damals mangels Datagrid nicht sinnvoll in WPF integriert werden. Zumindest das DataGrid hat man ja mittlerweile nachgerüstet...
    Den Vergleich von MFC und WinForms kann man bei WPF und WinForms allerdings nicht bemühen, da mit dem Umstieg von MFC auf WinForms erhebliche Nachteile einhergehen können (als Beispiel sei nur mal die Notwendigkeit von .NET genannt), die es bei einem Umstieg von WinForms auf WPF innerhalb der .NET-Umgebung so nicht gibt.
    Und wie gesagt: Man benötigt XAML so gut wie überhaupt nicht, wenn man nur Dinge macht, die auch mit WinForms funktionieren.