Erstelle deine erste Oberfläche in WPF & C# | Das BallSpiel

Поделиться
HTML-код
  • Опубликовано: 5 янв 2025

Комментарии • 167

  • @LernMoment
    @LernMoment  5 лет назад +6

    🔝⬆️🔝 Den Link zum Quellcode findest du in der Videobeschreibung! 🔝⬆️🔝
    Hier ein paar Einsprungpunkte:
    0:00 WPF Projekt anlegen
    2:25 Fenster & XAML Editor in VS2019 für WPF
    5:53 Controls auf die Oberfläche ziehen
    12:05 Den Ball positionieren
    12:54 dynamisches vs. statisches Design
    15:30 Der Start/Stop-Button-Click Eventhandler
    19:33 Wie kann der Ball auf dem Canvas bewegt werden?
    21:38 Auswahl & Anlegen eines Timers zur Steuerung des Balls
    25:57 Ball bewegen im Timer-Tick-Eventhandler
    28:33 Ball am linken und rechten Spielfeldrand umdrehen lassen
    34:12 ÜBUNG: Ball am oberen/unteren Rand drehen lassen

  • @Mile-Art
    @Mile-Art Год назад +2

    Supergeilo erklärt. Ich wünschte bei ILS würde das auch so erklärt werden in den Lernheften. Das hätte mir manches graues Haar erspart. Danke dafür. Sofort alles verstanden. Vielleicht auch weil ich das Studium schon durch habe aber trotzdem noch den einen oder anderen "AhA-Moment" gehabt. 🙂

  • @alexbargen2261
    @alexbargen2261 4 месяца назад

    Sehe das Video jetzt 4 Jahre nach Veröffentlichung. Verstehe ehrlich gesagt nicht wieso du nicht viel mehr Abonnenten hast.
    Super Video!

  • @johannesklett4024
    @johannesklett4024 3 года назад +1

    Hallo Jan,
    vielen Dank für das lehrreiche und didaktisch super aufgebaute Video. Ich bin 72 Jahre alt und möchte meine Gehirnzellen durch erstellen von C++, C# und WPF Anwendungen etwas trainieren.
    Die „Berlin-Uhr“ oder auch als „Mengenlehre-Uhr“ bezeichnet läuft als Desktop Anwendung schon.
    Jetzt möchte ich noch eine grafische Oberfläche dafür erstellen. Ich wünsche dir viel Erfolg, Glück und
    Gesundheit.
    Viele Grüße

    • @LernMoment
      @LernMoment  3 года назад

      Hallo Johannes,
      Super! Das finde ich wirklich beeindruckend. Hoffe, dass ich mit über 70 auch noch viele neue Dinge lerne und daran Spaß habe.
      Dir ebenfalls ganz viel Spaß und Erfolg!!!

  • @mariowolf1970
    @mariowolf1970 5 лет назад +10

    Es gibt Tausende Videos hier auf RUclips zum Thema WPF und CO.
    Allerdings versteht es keiner die Materie so gut zu erklären wie du .
    In 45 Min so viele Informationen zu vermitteln ohne das es Langweilig wird und Spaß macht, da gehört schon etwas dazu.
    Danke dafür.
    Ich freue mich schon auf die nächsten Videos !

    • @LernMoment
      @LernMoment  5 лет назад +2

      Mario Wolf ist denn heute schon wieder Weihnachten? Solch ein Kommentar ist ein super Weihnachtsgeschenk 😁. DANKE!
      Welche Themen bei WPF interessieren dich noch?

    • @LernMoment
      @LernMoment  5 лет назад +2

      Mario Wolf noch eine Frage. Welche anderen Videos zu WPF (also nicht von meinem Kanal ;) haben dir noch gefallen?

    • @mariowolf1970
      @mariowolf1970 5 лет назад +4

      ​@@LernMoment Gefallen ?
      Da gibt es eine Serie von Programmieren-Starten.de die war auch sehr gut
      Bestimmt noch ein oder anderes Video, dessen Namen ich mir leider nicht gemerkt habe.
      Leider findet man wenig in Deutsch über Datenbindung in WPF .
      NetCore3 und das Entwickeln für andere Systeme ist auch leider sehr wenig auf RUclips.

    • @LernMoment
      @LernMoment  5 лет назад +3

      Mario Wolf Danke! Das hilft mir für die Planung der Videos für nächstes Jahr.

  • @Kirsh1793
    @Kirsh1793 3 года назад +7

    Wirklich toll gemachtes Video! Ich finde es schön, wie viel Liebe für Details in die Zwischensequenzen gesteckt wurde. Das macht das Video sehr zugänglich.

  • @promensjuggler9864
    @promensjuggler9864 3 года назад +3

    Sehr talentierter "Erklär-Bär" - thx dafür und weiter so!

  • @neyax6147
    @neyax6147 4 года назад +4

    Wie aufwendig und gut gemacht das Video ist! Hut ab weiter so!

    • @LernMoment
      @LernMoment  4 года назад

      Neyax danke! Habe gerade mein Studio renoviert. Da wird es noch viel besser ;-).

    • @neyax6147
      @neyax6147 4 года назад

      @@LernMoment ich kanns kaum erwarten :D

  • @NivtiNivti-cp3bt
    @NivtiNivti-cp3bt 4 года назад +3

    Du brauchst mehr Aufmerksamkeit mein Lieber. Super Video und mega gut erklärt :)

  • @cschle
    @cschle 4 года назад +4

    Echt gutes Tutorial. Vor vielen Jahren habe ich viel mit WinForms/C# programmiert.
    Für Anfänger ist das Tutorial echt spitze. Stellvertretend für diese möchte ich einfach mal Danke sagen.
    Denn das Projekt "Ballspiel" ist vielleicht in 5 Minuten geschrieben/erstellt. Das Tutorial-Video hat sicher viele Stunden gebraucht.
    Eine Idee für Tutorials hätte ich. Wenn jemand das Live nach tippen möchte, wäre es sicher hilfreich wenn Du beim eingeben von neuem Quellcode (oder ändern von Vorhandenem) es neben dem Zeigen mit Angabe der Zeilennummer sagst.
    Also nicht nur "vielleicht habe ich nur vergessen das eine x umzutauschen in ein y" sondern "vielleicht habe ich ich nur vergessen in Zeile 69 das eine x umzutauschen in ein y".
    So kann man ohne aufs Video schauen zu müssen, allein von Ton die richtige Stelle im Quellcode finden.
    Aber ansonsten : Tutorial.Quality = Qualities.Perfect;

    • @LernMoment
      @LernMoment  4 года назад +2

      cschle sehr cool 😎! Vielen Dank für deine Rückmeldung!!!!

  • @PythBuster
    @PythBuster 4 года назад +2

    Hallo, ich lerne u.a. aus beruflichen Gründen C# und versuche mich an WPF. Ich freue mich auf deine anderen C# Tutorials und bedanke mich für dieses Video. :)

    • @LernMoment
      @LernMoment  4 года назад

      Sehr gerne. Du kannst auch an meinem kostenlosen WPF Kurs teilnehmen: www.Lernmoment.de/kurse

  • @2051joha
    @2051joha Год назад

    du erklärst das wirklich gut und machst dir viel Mühe. Vielen Dank.

  • @bko3872
    @bko3872 2 года назад +1

    Ich finde das Video echt Top, was ich Persönlich immer etwas verwirrend finde, ist die ganzen Biblitheken zu kennen / zu finden mit den passenden methoden. Ich selbst bin erst seit kurzen an c# dran, ursprünglich komm ich aus dem java bereich und habe mich an FX probiert bin aber mit FX nicht so zufrieden wie mit WPF. Was Ich sehr gerne sehen würde, währe ein Video, wie es mit VS 2021 und SQL datenbanken in WPF aussieht und Funktioniert - bislang habe ich leider nur ältere videos gefunden die mehr verwirrt haben wie klarheit zu schaffen.
    Danke für deine Videos
    Bester Gruß

  • @moritzmuller455
    @moritzmuller455 3 года назад

    Nach zwei Jahren immer noch aktuell und einfach gut erklärt, ist auch sehr anfängerfreundlich, besonders wenn man noch nie richtig Programmiert hat oder wie ich nur Erfahrung in HTML hat. PS freue mich auf die nächsten Videos.

  • @just4zock
    @just4zock 5 лет назад +1

    Sehr gutes Video! Guter Aufbau und leicht zu verstehen! Sehr sympathischer Mensch und es war sehr unterhaltsam, dafür das man nur etwas lernen wollte! 40 Minuten haben sich sehr gelohnt. Vielen Dank!

    • @LernMoment
      @LernMoment  5 лет назад +1

      AmiZz. Vielen Dank! Da macht das Aufstehen gleich nochmal mehr Spaß.
      Welche weiteren Themen rund um WPF würden sich interessieren?

    • @just4zock
      @just4zock 5 лет назад +2

      @@LernMoment Ich finde beim Spiele programmieren lernt man viel und die Motivation bleibt auch erhalten, weil es Spaß macht! Ich wäre für noch mehr Minispiele bzw. so Videos wie das hier, nur eventuell dann etwas komplexer :)

    • @LernMoment
      @LernMoment  5 лет назад +1

      AmiZz. Vielen Dank für deine Rückmeldung!
      Ja, das es langsam etwas komplizierter werden sollte denke ich auch. Das nächste Video ist nochmal recht einfach, aber ich überlege schon wie der Schwierigkeitsgrad dann erhöht werden kann.
      Was wäre denn ein konkretes Thema das dich im Bereich WPF interessiert? Einfach das ich mal einschätzen kann wieviel schwerer es werden sollte.

  • @GrowmieTilman
    @GrowmieTilman 3 года назад

    Danke für das gute Video, finde es gut mit Spaß zu lernen. Du bist das deutsche Pendant zu Tim Corey (deine Videos machen mehr Spaß!) und ich gucke mir deine Videos immer gerne an !

    • @LernMoment
      @LernMoment  3 года назад

      Vielen Dank 🤩! Bis ich in der Liga von Tim spielen kann dauert es noch etwas, aber freut mich das dir meine Videos gefallen.

  • @Chefspatz
    @Chefspatz 2 года назад

    Alles super erklärt! Die größte Herausforderung waren für mich die Unterschiede von deiner VS-Version und 2022, weil einiges anders aussah. Am Ende wusste ich zuerst nicht, warum der Ball diagnal geflogen ist, aber schließlich hatte ich den Bogen raus. Du bist ein toller Lehrer! :)

    • @LernMoment
      @LernMoment  2 года назад +2

      Super, dass du dich durch geboxt hast. Aktualisierung auf VS2022 wäre dringend erforderlich…

  • @KonradRadinger
    @KonradRadinger 5 лет назад +2

    Hallo Jan, echt super! Ich kenne zwar WPF, aber so ein Ballspiel "außerhalb" der Standardoberflächen und superwitzig verpackt finde ich sehr gelungen.

    • @LernMoment
      @LernMoment  5 лет назад

      Konrad Radinger Danke!

    • @LernMoment
      @LernMoment  5 лет назад

      Konrad Radinger freut mich auch sehr wieder von dir zuhören.

  • @honeybadger2490
    @honeybadger2490 2 года назад +1

    Brutal entspannt mit dir würd ich gern zusammen arbeiten

  • @ViaVemely
    @ViaVemely 4 года назад +2

    Das Tutorial war sehr hilfreich, an manchen Stellen etwas zu schnell, da ich nicht so schnell mitschreiben kann aber sonst gut. Am meisten hatte ich Probleme die Toolbox zu finden, ich hatte WPF vorher noch nie benutzt und wusste dann nicht wie man die öffnet. Ein noch größeres Problem war für mich der Teil wo sie den DispatcherTimer gemacht hatten und dieses kleine Symbol gedrückt haben. Ich musste das 10 mal anschauen um zu sehen was sie da eigentlich angeklickt haben. Ich hatte davor auch nicht gesehen das da so ein kleines Symbol war, sondern dachte zuerst das sie was anderes gedrückt haben. Da würde ich auch erneut sagen vielleicht etwas langsamer damit man besser sieht was sie da eigentlich tun, aber sonst hat man alles gut verstanden und bei mir funktioniert das auch.
    Also ,danke für das Tutorial :)

  • @auviniel
    @auviniel 4 года назад

    Sehr angenehme Ausstrahlung und wunderbare Erklärung! Als FaAn mit OOP-Problemen ( :-o vorher nur HTML/PHP/CSS) find ich Deine C#-Tutorials echt gut um wieder reinzukommen.
    Du hast am Ende zwar den Klick-Zähler vergessen, aber den code ich mir jetz selber :-)
    (auch nicht erwähnt, daß das Objekt 'Ball' seinen Namen bekommen muss (für nicht-Code-Kopierer))
    Machst'De jut, weiter so! :)

  • @sebastiangillissen3430
    @sebastiangillissen3430 4 года назад +1

    Hallo! Obwohl ich eigentlich nur ein Technikversierter Gerüstbauer bin und dies mein erstes Prog, war, habe ich es sehr gut mit deiner Anleitung hinbekommen ! dazu muss ich noch hinzufügen das ich schon von klein an ein TechFreak bin, mit 8 Jahren habe ich schon an Kassetenrecordern die Tonköpfe gegen Audiokabel ausgetauscht, bei CDRom´s im pc Chinchstecker eingelötet weil ich kein Geld für eine gute Grafikkarte hatte, aber das Programmieren Fehlte mir noch . Mann lernt nie aus !!!! Vielen Danke für Dieses super Video , ich werde auf jeden fall am Ball bleiben und mir deinen Stoff Reinziehen!!! PS. Scheinst ein Cooler Typ zu sein, Liebe Grüße Sebastian Gillissen

    • @LernMoment
      @LernMoment  4 года назад

      Hallo Sebastian, vielen Dank! Freut mich sehr , dass es dir geholfen hat. Auf meiner Webseite findest du noch einen kostenlosen Übungskurs zum Thema WPF.
      Https://www.Lernmoment.de/kurse

  • @michael.maurus
    @michael.maurus 3 года назад +2

    Ich bin in der Umschulung zum Fachinformatiker AE und deine Videos sind Oberklasse! Ich danke dir sehr, meine Übungsplattform ist definitiv hier auf deinem Kanal. Mein Abo hast du :)

  • @nanibanani7560
    @nanibanani7560 4 года назад +1

    ich bin eigentlich ein großer fan von deinen videos, aber in diesem video haben mich die Stellen mit der musik gestört. Aber erklärtechnisch bist du nach wie vor top

  • @jochenhappel5831
    @jochenhappel5831 4 года назад

    Super strukturiertes Video! Auch die unterhaltsamen Einwürfe wie "Hinweis" ist sehr lustigm und liebevoll gemacht. Als Fortsetzung wünsche ich mir einen rechteckigen Schläger. Das Rechteck zu zeichnen ist kein Problem. Aber Ball berührt den Schläger fände ich interessant.

  • @nicolashelios8556
    @nicolashelios8556 5 лет назад +1

    He schön wieder ein Video von Dir zu sehen! 🤗
    Also ich finde es noch ganz interessant den Moderator klein eingeblendet zu sehen.🤔😀
    Wpf kenne ich einigermaßen darum schaue ich jetzt nicht das ganze Video an.
    Aber toll das Du ein einsteiger Tutorial machst... 🤗

    • @LernMoment
      @LernMoment  5 лет назад

      Nicolas Helios vielen Dank 😊! Meine Lieblingsstelle magst du dir vielleicht anschauen 😉 ruclips.net/video/ugji-_yWoRk/видео.html

    • @nicolashelios8556
      @nicolashelios8556 5 лет назад

      @@LernMoment He kuhle Animation mit dem Lego Männchen! 😀🤗

    • @LernMoment
      @LernMoment  5 лет назад

      Nicolas Helios danke 😊. Hat mir auch richtig Spaß gemacht. Findest du so etwas in einem solchen Tutorial gut, oder eher nervig?

    • @nicolashelios8556
      @nicolashelios8556 5 лет назад +1

      @@LernMoment Sehr gut!🤗
      Das lockert auf. 🙂☺

  • @rlu1015
    @rlu1015 5 лет назад +1

    Klasse - das ist viel einfacher, als ich es mir zunächst vorgestellt habe! Weiter so! Mir gefällt besonders, wie Du die Anwendung im Nachhinein korrigierst (Ball läuft rechts aus dem Spielfeld, Ball läuft unten heraus). Eine kleine Anmerkung hätte ich da aber noch: Wenn Du Teile des Quelltextes kopierst und an anderer Stelle wieder einfügst, fällt es dem Betrachter des Videos schwer, an welcher Stelle genau der kopierte Text einzufügen ist, weil der Betrachter des Videos nicht den gesamten Quelltext sieht, sondern nur einen Ausschnitt hiervon. Anhand der Zeilennummern - daran habe ich mich dann orientiert - und natürlich auch mithilfe der Pause-Funktion und vor- bzw. zurückspulen im Video habe ich es dann aber doch noch hinbekommen!

    • @LernMoment
      @LernMoment  5 лет назад +1

      R LU das nenne ich Einsatz 😉! Kaum habe ich es gesagt, schon die nächsten 45 Minuten angeschaut.
      Vielen Dank auch für deine Rückmeldung. Offensichtlich habe ich nicht genügend darauf hingewiesen, aber es gibt den kompletten Quellcode (inkl. einem Überblick welche Änderungen ich gemacht habe) zum Anschauen auf GitHub. Den Link findest du in der Videobeschreibung oder hier ;-) github.com/LernMoment/ballspiel
      Wenn du GitHub noch nicht kennst, dann kann ich dir diese Videos empfehlen: GitHub Tutorial Deutsch ruclips.net/p/PLP2TrPpx5VNlLOYo5pook-0_0Uy0YLdHW

  • @anubits3550
    @anubits3550 4 года назад +5

    thx für deine super tutorials!!!

  • @AQUATASTISCH
    @AQUATASTISCH 2 года назад +1

    Mich würde es interessieren wie man Elemente ins Spiel bringt die mit dem ball interagieren können.

  • @JustusIW
    @JustusIW 4 года назад

    Danke! Ich habe nach Rund 7 Stunden Arbeit herausgefunden wie ich nach einem Zeit Intervall ohne Thread.Sleep etwas ausführen lassen kann.
    Jetzt sieht mein Code aus wie Schweizer Käse xD

  • @christianneumann2225
    @christianneumann2225 3 года назад +1

    Super Video. Kannst du mir bitte mal schnell erklären wo der Unterschied zwischen Name und x:name ist? Was sollte ich verwenden? 7:35 min. Vielen Dank

  • @MyRaiDiTube
    @MyRaiDiTube 3 года назад +1

    Sehr informativ und es hat Spaß gemacht! Gehe gleich zum 2. Teil.
    Wo ich etwas rumgerätselt habe: Kann ich den Ball nicht auch auf "Spielplatz" positionieren? Warum muss es das "Canvas" sein?

    • @LernMoment
      @LernMoment  3 года назад

      Das finde ich auch recht unlogisch, aber manche Sachen sind so wie sie sind :-)

  • @vonlichtenberger1495
    @vonlichtenberger1495 4 года назад +1

    ab 22:00 Funktioniert es einfach nicht bei mir !!!!
    obwohl ich es genau so mache zu mindestens wie er es im Video tut
    I need Help !

    • @LernMoment
      @LernMoment  4 года назад +1

      Madara Ushi was funktioniert denn nicht? Gibt es irgendwo eine Fehlermeldung?

    • @vonlichtenberger1495
      @vonlichtenberger1495 4 года назад +1

      @@LernMoment bei mir fangen die Probleme an mit dem animationsTimer der Funktioniert nicht so wie bei dir im Video anschließend auch natürlich antimations.Interval und Tick

    • @LernMoment
      @LernMoment  4 года назад +1

      Madara Ushi das ist blöd. Leider weiß ich so immer noch nicht was genau das Problem ist. Vielleicht kannst du mir deinen Quellcode zeigen?
      Eine Möglichkeit habe ich in diesem Video beschrieben ruclips.net/video/2gNVyMGfZTI/видео.html

  • @thomasseidl8335
    @thomasseidl8335 3 года назад

    Hallo als erstes einmal vielen Dank für dein super Video. Ich habe es auch sofort umgesetzt und dein Spiel selber geschrieben.
    Mit deiner Anleitung hat das auch super funktioniert.
    Als weitere Herausforderung lasse ich den Ball bei jedem Treffer ein wenig kleiner werden. Was auch schon sehr gut funktioniert.
    Nun habe ich das Spiel erweitert und lasse bei jedem 10. Klick einen weiteren Ball erscheinen, der dann auch durch das Spielfeld saust.
    Ich habe auch die seitlichen Canvas Begrenzungen für die neuen Bälle sauber hinbekommen. Nun stehe ich aber vor einer Herausforderung, die ich aktuell wie es scheint "noch" nicht selber stemmen kann.
    Ich möchte, dass die Bälle bei einem Kontakt untereinander auch in die gegenseitige Richtung abgelenkt werden.
    Leider ignoriert das Programm anscheinend meine Angaben zu seitlichen und Ober-, Untergrenzen des jeweiligen Balls. Sie laufen nach wie vor einfach durch den anderen hindurch.
    Vielleicht hast du noch einen Tipp für mich.
    Nochmals vielen Dank für deine super Videoreihe.

  • @henrikmuller1484
    @henrikmuller1484 3 года назад

    super Video und klasse erklärt. Ich verwende die 2022 (17.0.4) und habe nur ein Problem, beim Doppelklick auf den Startbutton macht passiert nicht das was im Video passiert. Ich kann nur die Beschriftung des Button ändern. Gibt es noch einen andern Weg?

  • @user-pl6qq1pn7v
    @user-pl6qq1pn7v 3 года назад +1

    Hallo Jan, mich würde interessieren, ob man in der XAML Syntax die Position des Balls auch anstelle von ... Canvas.Left="100"... als ... Canvas.Left=Canvas.ActualWidth/2... schreiben könnte. Mein Versuch hat leider nicht funktioniert, weder mit Canvas. noch mit dem Objektnamen "ellBall".
    Wie müsste man das gestalten?
    Deine Vortragsweise ist super und sehr kurzweilig. Vielen Dank dafür.
    Dann würde mich noch interessieren, wie Du die Commits erstellst. Leider habe ich das richtige Video noch nicht gefunden, worin das erklärt wird. Kannst Du mir dazu einen Tip geben.

    • @LernMoment
      @LernMoment  3 года назад

      Moin! Da XAML eine Beschreibungssprache ist, geht das leider nicht. Das XAML wird nämlich in dem Sinne nicht ausgeführt.
      Du könntest das über den Code behind oder wahrscheinlich auch über einen ValueConverter machen. In beiden Fälle wird aber C# Code benötigt.

  • @PeterLustig-ph9io
    @PeterLustig-ph9io 4 года назад

    Dankeschön, Super Anleitung

  • @gebrannteskind2475
    @gebrannteskind2475 4 года назад +2

    Hallo!
    Der Versuch, das Programm zu kompilieren, schlug leider fehl.
    Dieses geschah mit >Extras>Befehlszeile>Developer-Eingabeaufforderung.
    Was mache ich falsch? Ich bin Anfänger!
    Meine Eingabe war:
    csc C:\Users\Bernd\source
    epos\Mappe1\Projekt1\MainWindow.xaml.cs
    Dann kam:
    Microsoft (R) Visual C# Compiler Version 3.6.0-4.20251.5 (910223b6)
    Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.
    Projekt1\MainWindow.xaml.cs(7,22): error CS0234: Der Typ- oder Namespacename "Controls" ist im Namespace "System.Windows" nicht vorhanden. (Möglicherweise fehlt ein Assemblyverweis.)
    Projekt1\MainWindow.xaml.cs(8,22): error CS0234: Der Typ- oder Namespacename "Data" ist im Namespace "System.Windows" nicht vorhanden. (Möglicherweise fehlt ein Assemblyverweis.)
    Projekt1\MainWindow.xaml.cs(9,22): error CS0234: Der Typ- oder Namespacename "Documents" ist im Namespace "System.Windows" nicht vorhanden. (Möglicherweise fehlt ein Assemblyverweis.)
    Projekt1\MainWindow.xaml.cs(11,22): error CS0234: Der Typ- oder Namespacename "Media" ist im Namespace "System.Windows" nicht vorhanden. (Möglicherweise fehlt ein Assemblyverweis.)
    Projekt1\MainWindow.xaml.cs(12,22): error CS0234: Der Typ- oder Namespacename "Media" ist im Namespace "System.Windows" nicht vorhanden. (Möglicherweise fehlt ein Assemblyverweis.)
    Projekt1\MainWindow.xaml.cs(13,22): error CS0234: Der Typ- oder Namespacename "Navigation" ist im Namespace "System.Windows" nicht vorhanden. (Möglicherweise fehlt ein Assemblyverweis.)
    Projekt1\MainWindow.xaml.cs(14,22): error CS0234: Der Typ- oder Namespacename "Shapes" ist im Namespace "System.Windows" nicht vorhanden. (Möglicherweise fehlt ein Assemblyverweis.)
    Projekt1\MainWindow.xaml.cs(21,39): error CS0246: Der Typ- oder Namespacename "Window" wurde nicht gefunden (möglicherweise fehlt eine using-Direktive oder ein Assemblyverweis).

    • @LernMoment
      @LernMoment  4 года назад

      Das geht so ohne weiteres nicht, weil du versuchst nur eine Datei zu kompilieren, aber in WPF gibt es an einigen Stellen Dateien die Abhängigkeiten zu anderen haben. Es wird wahrscheinlich wesentlich einfacher zu sein MSbuild zu verwenden: msbuild Projekt1.csproj
      MSbuild nimmt die Projektdatei in der alle Dateien und Bibliotheken aufgelistet sind die dein Projekt beinhaltet/benötigt und ruft dann alle notwendigen Tools (z.B. CSC) mit den passenden Parametern in der passenden Reihenfolge auf. Auf der Konsole siehst du dann auch was msbuild aufruft, aber es Bedarf ein wenig Übung das alles zu entschlüsseln 😉.
      Mehr über msbuild findest du hier: docs.microsoft.com/de-de/visualstudio/msbuild/msbuild-command-line-reference?view=vs-2019

  • @Holko96
    @Holko96 3 года назад +1

    Vielen Dank für das klasse Tutorial. Kleine Anmerkung noch: Als Ich die Projektvorlage mit Visual Studio geöffnet habe, hat in Line 15 "using System.Windows.Threading;" gefehlt, weshalb Ich Probleme mit dem Timer bekommen habe. Ich weiß nicht, ob Ich fälschlicherweise was falsch gemacht habe, oder ob es dafür einen anderen Grund gibt, schließlich bemängelt es sonst keiner in den Kommentaren. Falls es zukünftig ähnliche Probleme gibt, liegt da vielleicht die Lösung, einfach noch "using System.Windows.Threading;" hinzufügen ;)

    • @LernMoment
      @LernMoment  3 года назад +1

      Danke für deinen Hinweis!
      Allerdings ist es so, dass nicht alle Bibliotheken die es gibt in der Projektvorlage über using eingebunden sind. Es wird noch häufiger vorkommen, dass du Klassen verwendest, deren Bibliothek noch über using eingebunden werden muss.
      Macht das Sinn?

    • @Holko96
      @Holko96 3 года назад +1

      @@LernMoment Vielen Dank für die Flotte antworten. Ich bin generell gespannt, was es noch weiter zu lernen gibt, da werden Bibliotheken bestimmt auch noch ein Thema werden 👍

  • @LaCorvette
    @LaCorvette 4 года назад

    Vielen Dank für das anschauliche und interessante Beispiel. Es war ein sehr guter erster Einblick in C# für mich (habe bereits Erfahrungen mit Java aus dem Studium). Ich empfinde beim Programmieren immer die Erstellung eines grundlegenden logischen Konzepts (Wie kann man das zu lösende Problem in Code fassen?) als die größte Herausforderung, danach ist das Coding selbst dann einfacher.

  • @berosamir1970
    @berosamir1970 4 года назад

    Hallo , kannst du bitte mir helfen? ich überlege ein Auto chess programm machen. Beispiel : schach Engine hinzufügen zu programm und maus macht was Engine sagt von selbst . Danke.

  • @rainerhauschild75
    @rainerhauschild75 3 года назад

    Hallo. Habe alles mitgetippt. Bei mir war "Ball" nicht definiert, habe es aber dann doch hinbekommen. Alles steht bei mir wie bei dir, aber der Ball bewegt sich nicht. Das frustet etwas, wenn man es genauso macht - es aber nicht genauso funktioniert.

  • @foldingfan7773
    @foldingfan7773 2 года назад

    Ich hätte tatsächlich noch eine Frage:
    Alle Beiträge die ich zum Thema WPF in C# finde sind recht Eindimensional. Was ich damit meine - es gibt genau diese eine Oberfläche von der aus alles behandelt wird.
    Jedoch funktioniert das bei dem was ich vor habe nicht.
    Ich habe eine Möglichkeit gefunden, ein Pop-Up Fenster einzurichten, aber das ist auch nicht genau das, wonach ich suche. Ich hätte gerne Möglichkeit, dass sich das GUI quasi nach einer Angabe neu lädt und sich eine neue Oberfläche öffnet, die ich komplett anders individuell gestalten kann.
    Also quasi ein 2. Fenster, nur anstatt das es geöffnet wird, dass es den vorherigen Inhalt durch neues Laden ersetzt, ohne diesen nervigen Öffnungs- und Schließungsprozess.
    Eine neue Oberfläche, nachdem der User mit etwas interagiert hat. Wie so eine 2. Seite, auf die dieser umblättert und im Idealfall auch wieder zurück kann.
    Da ich mich so schwer tue mein Anliegen zu formulieren ist es schwer sich selbst zu helfen. Ich hoffe es wurde hier deutlich und ich bin dankbar für Hilfe!

  • @jojohannes5103
    @jojohannes5103 4 года назад +1

    Die Größte Herausforderung für mich war hat man nicht wirklich machen müssen aber ich kann mir das gut vorstellen kann das ich Probleme mit dem selbst die Lösung mit Code zu finden und die dann in Code umzuschreiben.

  • @kevinprogscha6032
    @kevinprogscha6032 4 года назад +1

    Hallo, ich benutze das Microsoft Visual Studio Community 2019
    Version 16.8.3...
    Leider kann ich die wpf app (.net core) variante nicht bei einem neuen Projekt finden....
    was mach ich falsch?

    • @LernMoment
      @LernMoment  4 года назад

      Nichts. Seit November gibt es .NET 5.0. Das ist der Nachfolger von .NET Core. Du solltest also ein Projekttyp WPF (.NET) haben.

    • @kevinprogscha6032
      @kevinprogscha6032 4 года назад +1

      @@LernMoment jup, den hab ich... Dann ist das das gleiche?
      Danke für die antwort

    • @LernMoment
      @LernMoment  4 года назад

      Naja, es ist halt der Nachfolger. Das was ich im video zeige sollte damit allerdings auch so funktionieren.
      Viel Erfolg!

  • @stevehollo2450
    @stevehollo2450 4 года назад

    Vielen Dank zunächst für Deine Mühe, in Sachen C# + WPF so klasse zu unterstützen!!
    Kannst Du bitte mal die Variante aufzeigen, wie die Unterschiede einzustellen sind, wenn man dynamisch mit WPF arbeiten möchte (Dein wichtiger Hinweis ca. bei Min 15)?
    Oder habe ich das Video übersehen???

  • @peterk.2547
    @peterk.2547 5 лет назад +1

    Danke für das sehr gute Video.
    mich würde interessieren, wie man verschiedene Frames "schalten" kann. Von einem Fenster in ein Unterfenster. die abhängig von einander sind. z.B ein unterframe in dem die Eigenschaften " farbe..." vom Ball eingestellt werden können. vielleicht ist es möglich darauf einzugehen. Danke.

    • @LernMoment
      @LernMoment  5 лет назад +1

      Peter k. Fenster sind wie fast alles in C# und WPF Klassen. Du legst dir also 2 Fenster an (eines hast du ja schon in diesem Tutorial) und dann fügst du über den Projektexplorer noch ein weiteres hinzu (welches du mit Controls füllst wie hier beschrieben).
      Nun kannst du z.B. Im ersten Fenster einen neuen Button einfügen. Im Eventhandler dazu legst du eine Instanz deines 2. Fensters an und kannst dann darauf auf der Instanz des 2. Fensters entweder „Show“ aufrufen dann öffnet sich das weitere Fenster und du kannst beide Fenster parallel bedienen oder du rufst „ShowDialog“ auf der 2. Fensterinstanz auf und das 2. Fenster öffnet sich modal (du kannst also nur darin bedienen). Hoffe das hilft dir ein wenig. Werde es als Thema für zukünftige Videos aufnehmen. Danke!

    • @LernMoment
      @LernMoment  4 года назад

      Bist du weiter gekommen mit diesem Thema? Ich habe gerade mein neues Projekt "Community Fragen" gestartet. Darin habe ich auch deine Frage aufgenommen und eine Antwort inkl. Quellcode erstellt. Vielleicht hilft dir das github.com/LernMoment/community-fragen

  • @martinwiesmuller5186
    @martinwiesmuller5186 4 года назад +1

    Hallo
    Wie kann man den Ball von einem Objekt zurückspringen lassen?
    Gibt es dafür ein Event oder Ähnliches?

    • @LernMoment
      @LernMoment  4 года назад +1

      Hallo,
      Nein, dass musste du selber programmieren. Im Timer-Eventhandler, wenn du den Ball weiter setzt, kannst du überprüfen ob der Ball bereits den Canvas verlädst oder gegen ein anderes Objekt stößt. Dann musst du die Richtung ändern.

    • @LernMoment
      @LernMoment  4 года назад +1

      Im nächsten Video siehst du das dann auch nochmal.

  • @klaeng39
    @klaeng39 4 года назад +2

    Hallo Jan ,ich habe schon sehrviel von dir gelernt, nur wo du den QuellCode? versteckt hast, muss ich noch suchen,oder ich warte bis Ostern
    Da muss ich ja auch. Bitte weitermachen, alles Gute k.e.

    • @LernMoment
      @LernMoment  4 года назад +1

      klaeng39 cool! Vielen Dank!
      Links zum Quellcode findest du eigentlich immer in der videobeschreibung oder in einem angepinnten Kommentar. Ansonsten findest du auch alles unter github.com/lernmoment
      Viel Spaß beim suchen und finden

  • @programmadore9588
    @programmadore9588 4 года назад +1

    sehr gut

  • @TheFlowdrum
    @TheFlowdrum 3 года назад +1

    Noch jemand das Problem mit dem "Ball"? Ich bekomme ständig den Error "CS0103 - The name 'Ball' does not exist in the current context" geworfen. VS Schlägt auch nichts vor was da abhilfe schafft und ich habe google schon durchforstet... Es scheint mir als würde irgendwo ein Verweis auf die Variabel/dasObjekt Ball fehlen...

    • @LernMoment
      @LernMoment  3 года назад

      Hast du mal den Beispielcode ausprobiert?

    • @TheFlowdrum
      @TheFlowdrum 3 года назад +1

      @@LernMoment ja, Eckige Augen und irgendwie verpasst wo und wann der Name="Ball" in die xaml geschrieben wurde. War irgendwann dazwischen wohl... Danke für das Video und die Rückmeldung :)

  • @hafem
    @hafem 4 года назад

    ??? Bei mir geht schon der erste schritt schief nach dem Programm erstellen öffnet sind nur der mainwindow editor der designer fehlt in .net core bei .net framework ist er zu sehen

    • @LernMoment
      @LernMoment  4 года назад

      hafem welche Version von Visual Studio verwendest du denn? Hast du auch den .NET Core Workload (heißt etwas anders, aber ich kann gerade nicht nachschauen) installiert?

  • @Dan_the_Man86
    @Dan_the_Man86 4 года назад +1

    Hallo, vielen Dank für dieses Video.
    Ich habe hier aber ein Problem.

    • @LernMoment
      @LernMoment  4 года назад +1

      Hallo Dan,
      Leider kann ich dir so dazu nichts sagen. Wo genau tritt der Fehler denn auf und wie sieht dein Quellcode aus?
      Viele Grüße Jan

    • @Dan_the_Man86
      @Dan_the_Man86 4 года назад

      @@LernMoment ich habe das bei Dir abgeschrieben. Ich lade meinen Code morgen mal hoch.

    • @Dan_the_Man86
      @Dan_the_Man86 4 года назад

      @@LernMoment
      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Text;
      using System.Threading.Tasks;
      using System.Windows;
      using System.Windows.Controls;
      using System.Windows.Data;
      using System.Windows.Documents;
      using System.Windows.Input;
      using System.Windows.Media;
      using System.Windows.Media.Imaging;
      using System.Windows.Navigation;
      using System.Windows.Shapes;
      using System.Windows.Threading;
      namespace BallSpiel
      {
      ///
      /// Interaction logic for MainWindow.xaml
      ///
      public partial class MainWindow : Window
      {
      private readonly DispatcherTimer _animationsTimer = new DispatcherTimer();
      public MainWindow()
      {
      InitializeComponent();
      _animationsTimer.Interval = TimeSpan.FromMilliseconds(50);
      _animationsTimer.Tick += PositioniereBall;
      }
      private void PositioniereBall(object sender, EventArgs e)
      {
      var x = Canvas.GetLeft(Ball);
      if (x >= Spielplatz.ActualWidth)
      {
      Canvas.SetLeft(Ball, x - 5);
      }
      else
      {
      Canvas.SetLeft(Ball, x + 5);
      }
      }
      private void StartStopButton_Click(object sender, RoutedEventArgs e)
      {
      if (_animationsTimer.IsEnabled)
      {
      _animationsTimer.Stop();
      }
      else
      {
      _animationsTimer.Start();
      }
      }
      }
      }

    • @Dan_the_Man86
      @Dan_the_Man86 4 года назад

      Die folgenden Zeilen werden bemängelt.
      37, 41 und 45. Beim drücken des Start/Stop Button kommt eine aufforderung "Die Quelldatei ist anders als zum Zeitpunkt der Erstellung des Moduls. Soll der Debugger sie verwenden?
      Beim Bestätigen mit Ja kommt : Unbehandelte Ausnahem
      System.ArgumentNullException
      Es wird Zeile 36 angezeigt mit der { Klammer. Und diese Details kommen.
      System.ArgumentNullException
      HResult=0x80004003
      Nachricht = Value cannot be null.
      Quelle = PresentationFramework
      Stapelüberwachung:
      at System.Windows.Controls.Canvas.SetLeft(UIElement element, Double length)
      at BallSpiel.MainWindow.StartStopButton_Click(Object sender, RoutedEventArgs e) in C:\Users\Street\Google Drive\Daa\RUclips\BallSpiel\BallSpiel\MainWindow.xaml.cs:line 36
      at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
      at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
      at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
      at System.Windows.Controls.Primitives.ButtonBase.OnClick()
      at System.Windows.Controls.Button.OnClick()
      at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
      at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)
      at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
      at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
      at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
      at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
      at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
      at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
      at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
      at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
      at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
      at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
      at System.Windows.Input.InputManager.ProcessStagingArea()
      at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
      at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
      at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
      at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
      at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
      at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
      at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
      at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
      at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
      at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
      at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
      at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
      at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
      at System.Windows.Threading.Dispatcher.Run()
      at System.Windows.Application.RunDispatcher(Object ignore)
      at System.Windows.Application.RunInternal(Window window)
      at System.Windows.Application.Run()
      at BallSpiel.App.Main()

    • @LernMoment
      @LernMoment  4 года назад +1

      Die Aufforderung "Die Quelldatei ist anders als Zeitpunk der Erstellung ..." weist darauf hin, dass du entweder einen Fehler hast und momentan dein Quellcode nicht kompiliert wird, oder das dein Quellcode momentan beim Starten nicht kompiliert wird. Bitte wähle im Menü "Erstellen" den Eintrag "Projektmappe neu erstellen" aus. Dabei solltest du keine Fehlermeldung bekommen. Wenn doch, schreib sie hier.
      Öffne die Fehlerliste: Menü "Ansicht" -> "Fehlerliste". Stehen dort Fehler drin? Wenn ja, welche?
      Außerdem kannst du im MainWindow.xaml überprüfen ob bei der Ellipse auch wirklich x:Name="Ball" (bitte Groß- und Kleinschreibung beachten) steht.

  • @martinohv750
    @martinohv750 4 года назад

    Hi. vielen Dank für das klasse Tutorial. an 15:15 verweist du auf ein weiteres Tutorial wo du erklärst, wie man ein Dynamisches anstatt einem Statischen Layout verwendet. Kannst du das irgendwie verlinken? Ich finde das irgendwie nicht?
    Vielen Dank
    Liebe Grüße

    • @LernMoment
      @LernMoment  4 года назад +1

      Hi, vielen Dank! Du kannst das Video auch noch nicht finden, weil ich es noch gar nicht aufgenommen habe 😳.
      Mir ist ein anderes Projekt dazwischen gekommen und die nächsten WPF Tutorials stehen bisher nur auf meiner Todo-Liste. Sobald ich wieder etwas Zeit habe, werde ich die aber auch umsetzen.
      Ich habe gerade etwas gesucht, aber auf die Schnelle kann ich kein anderes Tutorial finden welches dynamisches Layout in WPF erklärt. Wenn du auch Englisch verstehst, kann ich die Tutorials von Tim Corey (IAmTimCorey) empfehlen. Er macht auch viel WPF und ist sehr interessant.

    • @martinohv750
      @martinohv750 4 года назад

      @@LernMoment Vielen dank! Mein Sohn versucht sich gerade an MVP aber ich bin leider nicht so gut um Erklären. Deine Videos haben ihm schon sehr viel geholfen. Aktuell sind wir bei den Unterschieden Viewbox, Dockpanel etc und da wäre das sehr Hilfreich gewesen... Aber vielleicht finden wir ja bei Tim Corey was. Danke Schön und vielen Dank für die guten Tutorials.

    • @LernMoment
      @LernMoment  4 года назад

      @@martinohv750 super! Ich nehme an dein Sohn geht noch in die Schule?

    • @martinohv750
      @martinohv750 4 года назад +1

      @@LernMoment Ja, er ist 15, spricht aber fast fließend englisch.

    • @LernMoment
      @LernMoment  4 года назад

      @@martinohv750 cool! Bei sowas bin ich immer total fasziniert. Da hat er natürlich auch Glück, dass er einen Vater hat, der ihn unterstützt. Weiter so!
      Wenn ich noch irgendwie helfen kann, sag gerne Bescheid.

  • @unknownonion5443
    @unknownonion5443 4 года назад

    Mein Ball geht trotz gleichen Code rechts raus :-D Hat das was mit dem dynamischen Layout zutun? Er hat das Fenster ja auch nicht statisch gemacht. :-D

  • @mbyt1780
    @mbyt1780 4 года назад

    hey bei mir funktioniert das
    Carnvas.SetLeft(ball, mitteX);
    Carnvas.SetTop(ball, mittey);
    nicht er kann das "SetTop" und "SetLeft"
    nicht finden

    • @mbyt1780
      @mbyt1780 4 года назад

      alles guht habs hinbekommen xD

  • @markus_2005
    @markus_2005 4 года назад

    Hallo Jan, ich hätte noch eine frage nähmlich hab in Google bisschen geschaut wie man einen Link öffnen kann und fand immer das hier:
    System.Diagnostics.Process.Start("www.youtube.com/");
    ,aber wenn ich das eingebe kommt immer die Nachricht das die Datei nicht gefunden wurde?!!?

    • @LernMoment
      @LernMoment  4 года назад

      Markus du musst mit angeben in welchem Programm die Webseite geöffnet werden soll. Für Microsoft Edge ginge dieses hier: stackoverflow.com/a/39626953
      Verwendest du Chrome, dann solltest du hier fündig werden: stackoverflow.com/questions/40859957/open-a-new-window-of-google-chrome-from-c-sharp

    • @markus_2005
      @markus_2005 4 года назад +1

      @@LernMoment Danke👍😃

  • @jonestako4721
    @jonestako4721 5 лет назад +1

    danke schön

    • @LernMoment
      @LernMoment  5 лет назад

      Gerne! Was hat dir gefallen oder auch nicht gefallen an diesem Video? Rückmeldung würde mir wirklich helfen für die nächsten Videos (die schon in der Planung sind ;).

  • @candjur
    @candjur 5 лет назад +1

    Ich finde das Video auch toll! Habs 2 Mal gesehen. Einmal aus Neugierde, obs gut ist.. und dann nochmal am PC beim selber mit-schreiben.
    Bin schwer auf das nächste Video gespannt. Gibts da einen Zeitrahmen, in dem das kommen sollte? :)

    • @LernMoment
      @LernMoment  5 лет назад

      Marco Fegerl Danke 😊!
      Wird definitiv innerhalb der nächsten Woche kommen. Wenn ich meine Stimme wieder habe, dann soll ab sofort jeden Donnerstag ein Video kommen.
      Hast du konkrete Fragen die im nächsten Video beantwortet werden sollen?

    • @candjur
      @candjur 5 лет назад +1

      @@LernMoment Das Du so rasch antwortest finde ich super! betreffend des Videos habe ich so keine Fragen. Da ich jedoch nicht weiss wie das jetzt weiter geht.. Falls Du die Abfrage der Pfeiltasten für die Spielsteuerung zeigen könntest, wäre das super. Aber natürlich nur, wenn das überhaupt zu dem nun folgenden Video passt.
      Danke! :)

    • @LernMoment
      @LernMoment  5 лет назад

      Marco Fegerl danke für deine Rückmeldung!
      Wird klappen, dass ich ein paar Tastatur-Events mit einbaue.
      Das Video ist geplant für nächsten Donnerstag. Vielleicht klappt es aber auch schon etwas früher 😁.

  • @robertpupic
    @robertpupic 3 года назад

    Warum ständig if else, statt einfach eine Switch Anweisung?

  • @markus_2005
    @markus_2005 5 лет назад +1

    Hi ich bin grad dabei mit WPF etwas zu probieren und wollte mir grad so ein kleines Programm machen das einen Dateipfad öffnet. jedoch finde ich keine aktuelle Möglichkeit wie man einen Dateipfad öffnen kann. (C:\desktop\) Würde mich freuen wenn du mir helfen könntest.

    • @LernMoment
      @LernMoment  5 лет назад

      Markus ich bin mir noch nicht ganz sicher was du meinst mit Dateipfad öffnen. Wenn du eine Datei öffnen möchtest, dann sollte dir dieses Video helfen: ruclips.net/video/KjP9v7xPUQE/видео.html
      Wenn du deinem Benutzer die Möglichkeit geben möchtest erst die Datei auszuwählen, dann könnte dir der OpenFileDialog helfen:
      docs.microsoft.com/de-de/dotnet/api/microsoft.win32.openfiledialog?view=netframework-4.8
      Kannst du damit etwas anfangen?

    • @markus_2005
      @markus_2005 5 лет назад +1

      @@LernMoment ne, will es so wie wenn ich im dos das hier eingeben "start C:\Desktop\" Wenn ich das im dos mache dann öffnet sich der Ortner. Mir gehts bei dem kleinen test Programm grad nur darum das ich einen Ortner mit einen Button öffnen kann.

    • @LernMoment
      @LernMoment  5 лет назад

      Markus dann solltest du dir überlegen wie die Anzeige des Ordners aussehen soll. In DOS öffnet der Befehl den Windows Explorer mit dem angegebenen Verzeichnis, richtig?
      In WPF hast du 2 Möglichkeiten. Entweder du startest über Process.Start(@"c:\test"); tatsächlich den Windows Explorer oder was für eine WPF Anwendung etwas üblicher ist, du machst etwas mit dem Inhalt des Verzeichnis. Also du zeigst in deiner eigenen Anwendung die unterverzeichnisse und Dateien an, oder zeigst nur einen bestimmten Typ von Dateien an, ...
      Der Unterschied ist, dass beim ersten Weg deine Anwendung eine andere Anwendung öffnet und diese dann die Arbeit macht während beim 2. Weg macht deine Anwendung die Arbeit selber.

    • @markus_2005
      @markus_2005 5 лет назад

      @@LernMoment also ich hab hier grad in Virsual Studio den code drin 'Process.Start(@"C:\desktop\test") ' jedoch kommt bei mir dann die Nachricht: Auf den Member "Process.Start(string)" kann nicht mit einem Instanzverweis zugegriffen werden.

    • @LernMoment
      @LernMoment  5 лет назад

      Markus also die Zeile sieht erstmal gut aus. Ich denke der Fehler liegt irgendwo anders. Dazu müsste ich den kompletten Code sehen.

  • @arbrimuco1639
    @arbrimuco1639 5 лет назад

    Hallo Jan, ich bin neu hier und total begeistert von diesem Kanal und habe alles wie im Video gezeigt durchgeführt.
    Jedoch passiert nichts, wenn ich ein doppel Click auf den StartStopButton mache(15:40). könntest du, oder jemand anders mir da bitte weiterhelfen?

    • @LernMoment
      @LernMoment  5 лет назад

      Danger gamer freut mich, dass es dir gefällt!
      Bitte markiere den Button, gehe in das Eigenschaftenfenster und schau dir die Ereignisse an (oben rechts den Blitz auswählen, nicht den Schraubenschlüssel). Wenn du dann bei Click schaust ist dort etwas eingetragen? Wenn nicht, kannst du einfach einen Doppelklick in das leere Textfeld neben Click machen. Wenn dort etwas eingetragen ist, kannst du ebenfalls einen Doppelklick machen und du solltest direkt in den Quellcode kommen. Wenn das nicht klappt, dann melde dich bitte nochmals.
      Sonst natürlich auch gerne 😉!

    • @arbrimuco1639
      @arbrimuco1639 5 лет назад +1

      @@LernMoment Danke für die schnelle Rückmeldung und hilfe aber wenn ich (Textfeld ist leer) ein doppel klick darauf mache kommt mir ein kleines fenster auf den screen auf den "Erignishandler kann nicht hinzugefügt werden" drauf steht

    • @LernMoment
      @LernMoment  5 лет назад

      Danger gamer puh, ohne dein Projekt zusehen ist das schwierig.
      Hast du vor dem Doppelklick definitiv den Button im Designer ausgewählt? Du solltest im Eigenschaftenfenster sehen, dass dort irgendwo Start/StopButton steht.

    • @LernMoment
      @LernMoment  5 лет назад

      Danger gamer konntest du das Problem mit dem Doppelklick mittlerweile lösen?

    • @arbrimuco1639
      @arbrimuco1639 5 лет назад

      @@LernMoment nein leider nicht

  • @shiny593
    @shiny593 4 года назад +2

    Ein Ballspiel beispiel.

  • @RosinenbomberPilot
    @RosinenbomberPilot 4 года назад

    Hey top Video und ich konnte vieles verstehen.
    Nur leider verstehe ich nicht, wie du alle Methoden immer so schnell kannst. (z.B. variable.Interval ; variable.Tick ; variable.IsEnabled ; variable.ActualHight usw.)
    Gibt es irgendeine Liste oder gute Videos, wie man diese Methoden alle auswendig lernen kann?
    ich verstehe die Grundlagen wie Schleifen, Arrays usw. schon sehr gut aber ohne die Methoden bringt es relativ wenig.
    Ich wusste bis gerade nicht einmal, dass man die Zeit hinzufügen kann...

    • @LernMoment
      @LernMoment  4 года назад

      Es gibt einen mit allen Klassen die Microsoft bereitstellt: docs.microsoft.com/de-de/dotnet/api/?view=net-5.0
      Wie du siehst sind es allerdings immens viele. Du brauchst also erstmal etwas Erfahrung wann du was einsetzt. Ein Weg diese Erfahrung zu sammeln sind Übungen. Du nimmst dir eine Übung oder Frage und versuchst sie gut es geht zu beantworten. Dann nimmst du dir die Musterlösung ins schaust wie dort die Antwort ist.
      Zusätzlich findest du auf Seiten wie Stackoverflow (stackoverflow.com) zu jeder erdenklichen Frage eine Antwort. Wenn du die Antwort nicht einfach nur abschreibst, sondern verwendest um zu lernen welche Möglichkeiten es gibt, dann sammelst du nach und nach Erfahrung.
      Eine weitere Möglichkeit sind meine Kurse: www.lernmoment.de/kurse
      Weiterhin viel Spaß mit C#
      Jan von LernMoment.de

    • @Kirsh1793
      @Kirsh1793 3 года назад +1

      Was mir auch immer hilft, ist die Auto-Vervollständigungsliste. Wenn du den Punkt nach dem Objekt machst um eben auf dessen Methoden oder Eigenschaften zuzugreifen, werden dir alle möglichen Optionen angezeigt. Scrolle mal durch die Liste und suche dir Einträge raus, wo du denkst, dass sie das machen, was du brauchst. Wenn du dir nicht sicher bist, kannst du dann auch googlen, was diese eine Methode macht oder was diese eine Eigenschaft beim Objekt anpasst.
      Wenn du schön regelmässig Commits machst, kannst du natürlich auch einfach ausprobieren und rückgängig machen, falls etwas kaputt geht. :)

  • @dominicschneider1018
    @dominicschneider1018 3 года назад

    Bin hier weil ich in 5 Tagen ein Vorstellungsgespräch für eine Ausbildung zum Fachinformatiker Anwendungsentwickler habe und bis dahin eine Aufgabe machen muss die meine jetzigen Erfahrungen aus der ITA Ausbildung zunichte macht. Ich hoffe ich bekomme das irgendwiw hin😅

    • @LernMoment
      @LernMoment  3 года назад

      Das schaffst du ganz bestimmt. Viel Erfolg!

  • @lukasvertnik
    @lukasvertnik 8 месяцев назад

    bro kein darkmode

  • @Tsugis
    @Tsugis 5 лет назад +1

    Schön wieder ein Video auf diesem Kanal, aber die Facecam kann man weglassen... wer findet sowas immer nur "toll"...

    • @LernMoment
      @LernMoment  5 лет назад +1

      Vielen Dank für deine Rückmeldung. Was stört dich an der Facecam? Ich nehme an du meinst damit die Einblendung von mir rechts unten, wenn ich Visual Studio zeige. Oder meinst du alle Teile in denen ich zusehen bin 🤔?

  • @chrisderwicht
    @chrisderwicht 2 года назад +1

    Ab Minute 13:
    Bei Punkt 1 muss ich KONSEQUENT widersprechen:
    Nur weil man Englisch benutzt, wirkt man nicht gleich professioneller. - Sowas beeindruckt vielleicht Scriptkiddies, aber niemanden der beruflich mit Softwareentwicklung zu tun hat. Profis schauen auf eine gute Lesbarkeit des Codes, Vollständigkeit in der Implementierung (z.B. bei Validierung und Ausnahmebehandlung), sinnvoll eingesetzte Entwurfsmuster, eine klare Struktur im Code, usw...
    Natürlich kann man so auch versuchen, von seinem Halbwissen abzulenken. Große deutsche Firmen versuchen das auch:
    Mit Bezeichnungen wie Service- und Meeting Point, Ticket, Counter, Call a Bike sowie DB Lounge und Kiss and Ride gelingt es der Deutschen Bahn erstaunlicherweise von Zugverspätungen, unfreundlichem Personal und hohen Preisen abzulenken. Eine bemerkenswerte Strategie...
    Bevor man sich also für reines Englisch bei Klassen, Variablen und Methoden entscheidet, sollte man sich fragen wer später mal den Code verstehen bzw. daran weiter arbeiten soll. Nicht jeder lädt seinen Code bei GitHub hoch um ihn mit der Welt zu teilen. Und wenn ihr nicht gerade international unterwegs seid und die Zielgruppe eurer Software auf den deutschsprachigen Raum beschränkt bleibt, dann spart euch diesen "wichtigen Hinweis" und konzentriert euch auf die Qualität eures Codes anstatt eure Zeit an den Google Übersetzer, dict.cc usw. zu vergeuden.

    • @LernMoment
      @LernMoment  2 года назад

      Ich verstehe deinen Punkt. Pauschale Aussagen sind immer fragwürdig (auch bei mir ;).
      Allerdings stellt sich mir die Frage wie weit du ohne Englisch (damit meine ich kein Bullshit-Bingo, wie es in manchen Firmen praktiziert wird) in der Softwareentwicklung kommst. Ich habe LernMoment ins Leben gerufen, weil ich weiß, dass Lernen für viele in Ihrer Muttersprache einfacher ist.
      Sobald du allerdings ein wenig weiter bist, kommst du meiner Meinung nach ohne Englisch nicht wirklich zurecht. Du führst Entwurfsmuster, Lesbarkeit des Codes, ... an. Alles das kommt aus dem Englischen im Original. Die Übersetzungen dazu sind meiner Erfahrung nach von unterschiedlicher Qualität (Schau dir mal bitte einige der Übersetzung auf docs.microsoft.com an).
      Nun stellt sich mir die Frage, wenn ich mich sowieso mit Englisch beschäftigen sollte, warum dann nicht auch den Code in Englisch schreiben? Momentan versteht der C#-Compiler (welches sinnvolle Wort verwendest du dafür in Deutsch?) die C# Schlüsselwörter nicht auf Deutsch. Wenn deine Variablen, Klassen, Methoden, ... also in Deutsch sind, aber die Schlüsselwörter in Englisch erhöht das nicht unbedingt die Lesbarkeit.
      Ich bin bei dir, dass es zu Anfang hilfreich sein kann, auch mal die Namen auf Deutsch zuschreiben um es etwas einfacher zu haben. Englisch zu verwenden nur weil es cool ist, hat für mich auch keinen Sinn. Allerdings stellt sich mir die Frage wieviele Projekte es heutzutage wirklich gibt, die nicht international sind.
      Wahrscheinlich gibt es wie immer für beide Positionen gute Beispiele. Also sollte es wohl auch für beide Positionen keine pauschale Aussage geben das sie immer richtig ist.

  • @3Play4PvP
    @3Play4PvP 3 года назад +1

    Hallo Leute, ich bin 21 und würde einen an "programmieren"
    Interessierten Anfänger Freund suchen (C++ oder C#). Möge er sich unter
    meinen Kommentar melden, danke!

  • @abrahamjaimes7643
    @abrahamjaimes7643 2 года назад

    no entendi ni madres..

  • @ahmadcelik-c3z
    @ahmadcelik-c3z 26 дней назад

    du bist hübsch

  • @ravuge5265
    @ravuge5265 3 года назад

    cringe bro wer benutzt schon noch vs19/vs17 ich bin in vs22

  • @norbertbraun9718
    @norbertbraun9718 4 года назад

    gut gemacht, leider nerven die ähm... extrem