Zum Inhalt springen

MMazi

Mitglieder
  • Gesamte Inhalte

    38
  • Benutzer seit

  • Letzter Besuch

Reputationsaktivitäten

  1. Like
    MMazi reagierte auf KeeperOfCoffee in Warnung CS0252   
    Wäre .Equals nicht besser, als den Content einfach mit ToString zu wandeln?
    Dann lernt er auch den Unterschied zwischen == und .Equals
  2. Danke
    MMazi reagierte auf Whiz-zarD in Warnung CS0252   
    Die Überladung des ==-Operators in der String-Klasse ruft die statische Variante von Equals() auf:
    public static bool operator == (String a, String b) { return String.Equals(a, b); } Wenn man die Equals()-Methode an der Instanz nehmen möchte, müsste vorher noch auf null prüfen. Also:
    if(btnStart?.Content != null && btnStart.Content.Equals("Start")) { ... } Ich persönlich finde dies unschön. Wenn man aber weiß, dass da eh nur ein String drinnen sein kann, dann würde ich es in ein String casten. Also:
    if((string)btnStart.Content == "Start") { ... } Oder um eine Excepion zu verhindern eben die statsiche Variante;
    if(string.Equals(btnStart?.Content, "Start")) { ... }  
  3. Danke
    MMazi reagierte auf maestro impostor in Warnung CS0252   
    Eben, deshalb wunder ich mich auch über die Antwort.
    Das Type Checking an der Stelle ist 100% richtig.

    Aber Hauptsache Doku richtig gelesen... 🙄
  4. Danke
    MMazi reagierte auf Whiz-zarD in Warnung CS0252   
    nirgends. Der Code
    if (tbx.GetType() == typeof(TextBox)) { ((TextBox)tbx).Clear(); } ist schon richtig. Da liegt nicht der Fehler. Type hat nämlich ebenfalls den ==-Operator überschrieben.
  5. Like
    MMazi reagierte auf KeeperOfCoffee in Erfahrung Udemy Kurse   
    Ist halt wie immer: Du musst selbst suchen nach guten Kursen, Bewertungen vergleichen, letzte Aktualisierung ansehen.
    Persönlich halte ich mehr von Pluralsight, weil da nicht jeder so einfach nen Kurs erstellen kann, das sind eher ausgewählte Experten aus der Industrie. Die haben aber dafür ein Abo-Model, ist also schon teurer.
    Udemy ist aber ok, man muss nur sich damit abfinden, dass auch mal ein schlechter Kurs dabei ist.
    Und: Zahle nie die 200€ Kurse...warte bis das Angebot kommt und du nur 10€ zahlst.
  6. Danke
    MMazi reagierte auf KeeperOfCoffee in Datenbindung WPF   
    Um das mal ganz grob zu erklären.
    In WPF hat sich das MVVM Pattern als Best Practice herauskristallisiert und viele Techniken von XAML basieren darauf.
    View: Die View ist eine XAML Datei, oft eine Page oder ein Window, und sollte im Code-Behind wenn möglich keinerlei Logik haben, besonders keine Logik die mit dem Model oder den ViewModels zu tun hat. Die View wird an ViewModels mittels DataBindings gebunden.
    ViewModel: Ein ViewModel exportiert Daten zur View. Man könnte sagen es ist eine Abstraktion der View. Alle möglichen Daten abbilden, die du in der View anzeigen willst ODER auch ein Verhalten abbilden mittels Commands. (Deshalb haben Buttons die XAML Property Command).
    Model: Das Model sind generell die Daten die du in der WPF Anwendung generell zur Verfügung stellen willst. Hier sind alle Properties z.B. deines User Objects definiert (für ein entsprechendes ViewModel benötigst du ja evtl. nur eine Property von hier z.B. Name).
     
    Im DataContext eines UserWindows ist also ein UserViewModel, welches Daten verwendet die aus dem bereitgestellten User-Objectes aus dem Model kommt.
     
    // Model public class User { public int id { get; set; } public string Name { get; set; } } // ViewModel public class UserWindowViewModel { private readonly _user; public UserWindowViewModel(User user) { _user = user; } public string Name => _user.Name; } // Window Anzeige Window userWindow = new Window(); userWindow.DataContext = new UserWindowViewModel(); userWindow.ShowDialog(); // TextBlock im Window <TextBlock Text="{Binding Name, Mode=OneWay}"/> Das ist aaaaaabbbberr eine sehr vereinfachte Darstellung.
    Meist nutzt man für MVVM heutzutage eher Frameworks wie z.B. PRISM, MVVMCross oder ReactiveUI.
    Würde dir empfehlen mal das Beispiel von MVVMCross anzusehen
    https://www.mvvmcross.com/documentation/tutorials/tipcalc/a-wpf-ui-project
  7. Danke
    MMazi reagierte auf Whiz-zarD in Datenbindung WPF   
    Ja, das Problem ist, dass WPF trotz seiner Monstrosität sich doch recht halbgar anfühlt, wenn man es so nutzen möchte, wie es mal angedacht war. Nicht umsonst hat das "patterns & practices"-Team von Microsoft ursprünglich sogar noch Prism entwickelt, um die Arbeit mit WPF zu erleichtern. Selbst intern ist man wohl mit WPF nicht zufrieden gewesen.
    Meines Wissens nach wurde ja auch die Oberfläche von Visual Studio mit WPF und Prism entwickelt.
  8. Like
    MMazi reagierte auf Maniska in Ordnerpfad definieren   
    This!
    Ich entscheide wer wo auf meiner Platte Zeugs ablegt, entweder indem ich es einstellen kann, oder indem ich ein Programm wähle bei dem ich es einstellen kann.
  9. Like
    MMazi reagierte auf MartinSt in Ordnerpfad definieren   
    @MMazi Um die Eingangsfrage zu beantworten, so allgemein wie sie formuliert ist : NEIN.
    Und was die Kollegen hier meinen ist, du sollst lesen, nachdenken und verstehen. Neben den schon genannten Leer- und Sonderzeichen, hast du auch zu bedenken, dass immer auch die Schreibrechte aufs Verzeichnis in Frage stehen. Jedes OS und viele User haben strikte Regeln wo Logs, Protokolle u.ä. liegen und ein Programm dass wild auf meiner Platte Dateien erzeugt, fliegt in 10sec wieder runter.
    Also: Gibt dem Anwender die Chance zu konfigurieren, wo die Dateien hin sollen und schlag ihm dafür ein für sein OS typisches Verzeichnis vor.
  10. Danke
    MMazi reagierte auf KeeperOfCoffee in DataGridView die Zeilen werden versetzt eingefügt   
    Muss, wenn es nur eine Übung sein soll, nicht mal eine DB sein. Kannst auch einfach ein DataSet aus einem JSON erstellen.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...