Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von winSharp93
Thema: Bitcoin zum Scheitern verurteilt?
Am im Forum: Smalltalk

Zitat von Abt
"Reguläres" Geld hingegen hat einen realen Gegenwert, sodass dieses einer gewissen Inflation unterliegt.
Auch nicht allzu realer als Bitcoin: Fiatgeld / Mindestreserve-System ;-)

Wobei ich die Garantie eines Staates / einer Staatengemeinschaft immer noch deutlich höher schätze als die einzelner Individuen.

Thema: Bitcoin zum Scheitern verurteilt?
Am im Forum: Smalltalk

Hallo zusammen,

das europäische Überweisungssystem scheint doch in vielerlei Hinsicht einmalig auf der Welt zu sein.

Versicherungen per Lastschrift? Miete per Dauerauftrag? Kauf auf Rechnung und anschließende Zahlung per Überweisung?
In USA / China kann man davon nur träumen (als Europäer in einem der beiden Länder). Als kostenfreie Zahlungsmöglichkeit bleiben da nur Checks oder vor allem Bargeld.
Insofern kann ich durchaus verstehen, dass der Gedanke eines kostenfreien Zahlungsmittels ganz gut ankommt, weil's bisher einfach keine Alternative gibt.

Anonym sind die ganzen Cryptocoins hingegen nicht wirklich: Sämtliche Transaktionen sind öffentlich, sodass sich jederzeit nachvollziehen lässt, wie viel von welcher Adresse zu welcher fließt.

Meine Erfahrungen mit Cryptocoins beziehen sich auf ein paar Testläufe Anfang letzten Jahres: Habe da für ein paar Monate einen Litecoin-Miner auf einem idlenden Homeserver (muss zwecks Cloud-Backup eh 24/7 laufen) laufen lassen.
Ergebnis nach der Zeit: 9 Litecoins, deren Wert unter $5 lag.

Naja - inzwischen ist das Zeug knapp $200 Wert.
Habe spaßeshalber die Hälfte in allerlei andere Cryptocoins getauscht - deren Wert jeweils regelmäßig um die +/- 50% schwankt.

Inzwischen mine ich wieder mit der Idle-Leistung - in den letzten 24h kamen so immerhin knappe $0.02 zusammen. Und die Chance, dass das Zeug nochmal nach oben schießt, ist immerhin größer als die eines 6er im Lotto - und gratis isses auch noch
Naja - aber Geld in die Hand nehmen, um minen zu können, würde ich definitiv nicht. Die c't hat das IMHO ganz nett damit auf den Punkt gebracht, dass diejenigen, die von einem Goldrausch profitieren, hauptsächlich diejenigen sind, die die ganze Ausrüstung verkaufen - ASIC Miner etc. in diesem Fall.

Bezahlen würde ich mit Cryptocoins jedenfalls in absehbarer Zukunft nicht - zu groß ist der Aufwand (erstmal stundenlang irgendeine Blockchain downloaden, irgendwelchen dubiosen Seiten echtes Geld überweisen und dann erst einige Zeit später Coins rauskriegen) und die besagten Wechselkursschwankungen. Außerdem kann man das Geld dann nur von dem Rechner nutzen, auf dem man das Wallet liegen hat und läuft Gefahr, dass man bestohlen wird.
Ein Online-Wallet wirkt dem dann natürlich etwas entgegen, aber es ist nicht unwahrscheinlich, dass der Anbieter mitsamt dem Kontostand von einem Tag auf den anderen einfach verschwindet.

Naja - da zahle ich gerne die paar Prozent für eine Kreditkarte mit 0€ Haftung und/oder die Paypal-Gebühr.

Thema: Wenn zwei tasten gedrückt, dann diagonal laufen
Am im Forum: GUI: Windows-Forms

Zitat von jansenpeter
Wie frage ich jetzt ab das die beiden Tasten gedrückt sind?
Ein UND-Case gibts ja nicht ;)
Nein, aber zwei bzw. vier if-Statements sollten den Job auch tun.

Bitte beachte aber, dass wir gewisse Grundlagen (worin deine Frage definitiv zählt) hier voraussetzen.

Thema: Welche Plattform für freie (Open Source-) Projekte wird von euch bevorzugt?
Am im Forum: Smalltalk

Hallo Abt,

ich habe zwar keine aktiven OS-Projekte (private Projekte liegen in GIT auf einem TFS - klappt bisher echt ganz gut), also rein aus Entwicklersicht:

Nichts gegen Codeplex, allerdings habe ich das Gefühl, dass die Plattform leider ein wenig auf dem "Abstellgleis" ist: Es finden sich dort zwar einige qualitativ hochwertige Projekte, aber recht wenige davon werden wirklich noch aktiv gemaintained.
Außerdem ist Codeplex IMHO etwas "isoliert" auf MS - mit GitHub erreicht man meiner Meinung nach eine deutlich größere Community (insbesondere bei nicht-MS Technologien wie Java, JavaScript etc.).

Zudem finde ich die Oberfläche von GitHub deutlich angenehmer als die von Codeplex; ist aber mehr subjektiv. Wichtig für den Erfolg eines OS-Projektes ist IMHO auch eine aktuelle Readme-Datei, die (zumindest ungefähr) beschreibt, wie man das Projekt eingebunden und zum Laufen kriegt. Ohne die ist ein Projekt bei mir meist "unten durch", da ich teilweise die Erfahrung gemacht habe, dass selber machen (bei kleineren Komponenten) in so einem Fall schneller geht.

Da ich inzwischen mehr im Java-Umfeld unterwegs bin (MS ist bei meinem Arbeitgeber nicht allzu gerne gesehen; äußert sich auch in einer fehlenden Office-Lizenz...) nutze ich meist Maven (geht in die Richtung von NuGet, allerdings XML-basiert und deutlich mächtiger).

Dazu muss ich sagen, dass mich das Dependency-Management unter .NET immer ein wenig davon abgehalten hat, "triviale" Komponenten zu verwenden: Wohin damit? Ins Sourcecontrol? Wie sieht das dann mit den Lizenzen aus etc.? (Note: Rein rhetorisch, die Frage ).
Unter Maven ist das anders: Fünf Zeilen XML hinzufügen und die Dependency wird automatisch geladen und eingebunden und der Build läuft reproduzierbar auch über Plattformgrenzen (OSX / Windows). Kompilate oder Quellcode runterzuladen (und dann Stunden damit zu verbringen, diesen zum Kompilieren zu bringen... - daher ein klares Nein! zum Wunsch, den Fremdcode in den eigenen zu integrieren), fühlt sich damit dann schon richtig altertümlich an.

Ähnlichen Komfort bin ich bisher nicht von NuGet gewohnt, in letzter Zeit hat sich die Situation aber IMHO deutlich verbessert - allerdings sind bisher nur recht wenige Projekte auch tatsächlich dort verfügbar.

Thema: Schnittpunkt(e) zweier Linien (1 Strecke ist vertikal, 1 Strecke ist Horizontal)
Am im Forum: Grafik und Sound

Zitat von dr4g0n76
die Geradengleichungsformen (bzw. Steigungsform, 2 Punkteform) nicht verwendet werden sollen?
Alternative wären dann ja noch die Beschreibung der Gerade mittels Vektoren (x = a + b*y, wobei x, a und b jeweils Vektoren sind). Dann kann man - soweit ich mich erinnern kann - recht elegant den Schnittpunkt berechnen (und hat auch keine Probleme mit der Steigung im Falle der vertikalen Linie).
Ist aber doch schon wieder eine Weile her, das ganze - aber evtl. findest du damit ja noch was Eleganteres

Thema: viele und lange texte auf panel: verschieben der "zeichnung" dauert extrem lange
Am im Forum: Grafik und Sound

Hallo kraeppy,

siehe im Allgemeinen [Artikel] Zeichnen Optimieren / Schnelles zeichnen und [GDI+] Komponente zum einfachen Zeichnen von Elementen (inkl. Scrolling, Zooming + Hittesting)

Thema: Standort auf Deutschlandkarte markieren
Am im Forum: Rund um die Programmierung

Ja - geht ganz einfach mit dem Google-Maps-SDK:
Einfach Link zusammenbasteln und du hast eine Karte, z.B.:

https://maps.googleapis.com/maps/api/staticmap?center=Germany&zoom=5&size=450x300&maptype=terrain&markers=color:red%7Clabel:%20%7Cberlin&sensor=false

wird zu:

Thema: NAS für Intranet?
Am im Forum: Smalltalk

Zitat von nane
Wenn sich das bewährt kann man immer noch an eine größer bzw. spezifischere Lösung denken.
Damit würde ich ehrlich gesagt gar nicht groß anfangen.
Ein NAS eignet sich IMHO nicht wirklich als Webserver.

Nehmt lieber einen "echten" Server, der auch ein paar Dateifreigaben hat; da habt ihr dann vermutlich mehr davon.

Thema: DGV Combobox hinzufügen mit Werten während Rows Add Methode wirf Exception wegen Format
Am im Forum: GUI: Windows-Forms

Zitat von DRottmann
Hast du viellecht überlesen nicht schlimm.
Genau, schlimmer ist nämlich, dass du den verlinkten Beitrag offensichtlich auch nicht genau genug gelesen hast:
Zitat
Wie man eine Exception fangen kann, wenn man nicht weiß, wo sie geworfen wird

Eine Exception wird in der umgekehrten Reihenfolge, in der die Methoden einander aufgerufen haben, nach oben geworfen und zwar bis zum ersten try/catch auf das sie trifft oder - wenn es ein solches nicht gibt - bis ganz oben (unhandled exception). Wenn die Exception nicht durch ein bestehendes try/catch "weggefangen" wird, kann man die Exception also ganz oben abfangen. Ganz oben ist im Main-Thread die Main-Methode und für andere Threads deren ThreadStart-Methode bzw. deren Entsprechung, z.B. bei BackgroundWorker der DoWork-EventHandler.

Statt die Exception mit try/catch abzufangen, kann man sie auch unbehandelt lassen und die entsprechenden Events abonnieren, um ihrer habhaft zu werden, als da wären AppDomain.UnhandledException (für alle Anwendungsarten), Application.ThreadException (für Windows-Forms-Anwendungen) und Application.DispatcherUnhandledException (für WPF-Anwendungen).

Man muss jedoch nicht unbedingt den Code ändern, um an die Exception zu kommen. In Visual Studio kann im Menü "Debug"/"Exceptions" eingestellt werden, dass der Debugger bei einer Exception automatisch hält. Dazu ist in "Common Language Runtime Exceptions" bei "Thrown" der Haken zu setzen. Diese Einstellung gilt für die aktuelle Solution.

Tritt nun eine Exception auf, so hält der Debugger an der betreffender Stelle und über die DataTips (mit der Maus über eine Variable fahren) können die Werte der Variablen geprüft werden.

Außerdem sagt doch die Messagebox, wie du an die Exception kommst (via Event).

Thema: Berechnung der CPU-Zeit eines Code-Abschnitts
Am im Forum: Rund um die Programmierung

Hallo SlyFox,

insbesondere solltest du beachten, dass du in der Release Konfiguration ohne angehängten Debugger misst. Sonst verzerrt das ganz schnell das Ergebnis...

Noch ein paar andere Punkte, auf die du beim (manuellen) Messen achten solltest (IMHO ist ein Profiler sehr gut, um einen Überblick über die Gesamtperformance zu erhalten; Optimieren kann man dann am besten mittels direktem Vergleich von Codeschnippseln):

  • Mehrfach messen - ruhig ein paar tausend mal und dann die beste Zeit und den Durchschnitt betrachten
  • Vor jedem Test GC.Collect() aufrufen (damit keine GC dazwischenkommt)
  • Vor jedem Test Thread.Sleep(0) aufrufen (damit der Test möglichst in einer Zeitscheibe durchrennt)
  • Priorität des Prozesses auf "High" setzen (damit du möglichst lange Rechenzeit zugeteilt bekommst)
  • Keine andere Software nebenher laufen lassen (ok , sollte eigentlich selbstverständlich sein)
  • Vor der eigentlichen Messung "aufwärmen", d.h. erstmal allen Code einmal aufrufen, sodass der JIT-Compiler seine Aufgaben erledigen kann
  • Berechnungen der Zeiten erst nach dem Stoppen der Stopwatch durchführen
  • Affinität des Threads auf einen Core setzen (den im Idealfall keine anderen Prozesse / Threads) zugeordnet sind.

Thema: Softwarearchitektur Seminar - Empfehlungen
Am im Forum: Smalltalk

Hallo UNeverNo,

evtl. würde es helfen, weiter einzugrenzen, in welche Richtung du gehen möchtest - Softwarearchitektur ist jetzt ja auch kein so kleines Feld. Oder geht es mehr "ums Große Ganze"? Best Practices? Entwurfsmuster? Architekturen verteilter Anwendungen? ...?

Sich erst einmal im Klaren zu sein, über was genau man sich eigentlich weiterbilden möchte und ein paar Anforderungen zusammenszustellen, ist IMHO der erste Schritt. Insbesondere, wenn man weiß, wo man in nächster Zeit seine Schwerpunkte setzen möchte, sodass man auch eine Fortbildung wählt, die dazu passt.

Was hast du denn bisher so im Blickfeld? Vielleicht hat da jemand dann ganz konkrete Erfahrungen dazu.

Thema: Überladener Konstruktoraufruf bei generische Klasse
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Bezogen auf die Eingangsfrage:
Rein von der Syntax geht das mithilfe eines kleines Tricks:


class Foo<T>
{
    Foo(string name)
        : this(name, ref new Helper<T>().obj)
    { }

    Foo(string name, ref T obj) { }
}

class Helper<T>
{
    public T obj;
}

Thema: WPF Datenverarbeitung
Am im Forum: GUI: WPF und XAML

Hast du mal in die Doku geschaut?
Der Parameter muss in INavigationAware.OnNavigated abgefragt werden, statt im Konstruktor.

Thema: WPF Datenverarbeitung
Am im Forum: GUI: WPF und XAML

Aha - also DevExpress.
Siehe z.B. INavigationService.Navigate(String,Object,Object) Method (der 2. Parameter ist ein frei wählbares Objekt) oder How to: Pass data between loosely coupled View Models

Thema: WPF Datenverarbeitung
Am im Forum: GUI: WPF und XAML

Hallo Steffen555,

herzlich willkommen hier auf myCSharp.de!

Wo genau kommt denn der INavigationService her? 3rd-Party? Eigenentwicklung?
Davon hängt recht stark ab, wie du weiter vorgehen kannst.

Du hast recht: Das ViewModel aus dem MainWindow zu holen ist alles andere als elegant.

Schaue dich einmal um, ob du eventuell das DetailViewModel zunächst erzeugen und erst in einem zweiten Schritt zu ihm hinnavigieren kannst. Dann hättest du direkten Zugriff darauf ohne irgendwelche Umwege.

Thema: Alle Instanzen einer Klasse ermitteln
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Zitat von Palladin007
Kann ich dann theoretisch auch alle Instanzen einer Klasse, die in dem aktuellen Prozess erstellt wurden und noch nicht zum löschen frei gegeben wurden, abfragen?
Aus Performance-Gründen: Verwende einen (fertigen) MemoryProfiler, z.B. den von Jetbrains.

Zu Logging / Debug-Zwecken:
Füge im Konstruktor der Objekte eine WeakReferenz auf this in eine statische Liste ein (wie herbivore meinte); muss eigentlich kein Dictionary sein.

Thema: Thread-Affinity: z.B. zwei Threads jeweils einen Prozessorkern zuweisen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo snsewill,

was ist hiermit: Running .NET threads on selected processor cores?

Thema: Auf Mausposition zoomen
Am im Forum: Grafik und Sound

Siehe [GDI+] Komponente zum einfachen Zeichnen von Elementen (inkl. Scrolling, Zooming + Hittesting) als Inspiration.

Thema: SQL Server Lizensierung
Am im Forum: Smalltalk

Zitat von tASven
Kann das jmd. Bestätigen?
Obligatorischer Hinweis: Bitte beachte, dass wir hier im Forum keine Rechtsberatung geben können oder dürfen. Für eine abschließende Antwort bleibt dir also nur eine Anfrage beim MS-Support oder der Gang zu einem Rechtsanwalt.

Thema: Ordner verbergen/verschlüsseln
Am im Forum: Rund um die Programmierung

Zitat von Abt
Einzige Möglichkeit: einen eigenen Container und das dazugehörige Programm entwickeln (zB wie TrueCrypt).
Wenn du den Ordner nicht im Explorer sehen können musst (und es dir lediglich darum geht, die Dateien entsprechend abzulegen), kannst du auch auf "fertige" Container zurückgreifen, z.B. Codeplex: NFileStorage. Das lässt sich bestimmt so konfigurieren bzw. erweitern, dass der Container verschlüsselt wird.

Wenn du das ganze wirklich im Explorer haben willst, wird es etwas trickreicher: Dann ist ein virtuelles Dateisystem, was du suchst, z.B. Dokan, Callback File System oder eine WebDAV / SMB Implementierung. Aber das klingt alles andere als trivial.

Thema: Variable ohne Bindung in xaml übergeben
Am im Forum: GUI: WPF und XAML

Zitat von Robin0
Ja, ich weiß das will es deshalb ja nich verwenden.
Evtl. wäre es eine Überlegung wert, dein viewModel so umzustellen, dass es zwar ungültige Werte in seinen eignen Properties zulässt, aber nur gültige Werte weitergibt.
Dann kannst du wunderbar Validierungsfehler mittels IdataErrorInfo anzeigen und bist deine Probleme los.

Alternativ kannst du auch mittels Exception Validierungsfehler auslösen (Binding.ValidatesOnException) oder so. Davon würde ich aber eher abraten und diese Vorgehensweise nur für die Schicht unter den ViewModels anwenden.

Thema: InstallShield 2013 LE: wie auf windows update prüfen und ggf. installieren
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Zitat von Abt
Ich würde das in der Abwendung prüfen
...wobei das IMHO der Usability schadet, wenn beim ersten Start der Anwendung dann nochmal etwas installiert werden muss (u.U. muss dann nochmal ein Admin das Kennwort eingeben usw.).
Ein derartiger Check macht also nur zusätzlich Sinn.

Die gängige Variante ist in solchen Fällen glaube ich, das Update einfach generell mit auszuliefern und zu installieren (Silent).

Ansonsten: Siehe Registry, wie in Update for the .NET Framework 4 beschrieben.

Thema: Variable ohne Bindung in xaml übergeben
Am im Forum: GUI: WPF und XAML

Hallo Robin0,

verwende besser IDataErrorInfo zur Validierung; dann stellt sich das Problem erst gar nicht.

Thema: Fragen zur Projektstruktur
Am im Forum: Rund um die Programmierung

Zitat von ilcsh
Habe ich das richtig verstanden, meine Tabellen sowie derren Spaltennamen, erstelle ich in Klassen? Ist das auch empfehlenswert wenn ich SQLite verwenden möchte?
Was ich noch nicht verstehe, ich hatte Stored Procedures, kann ich die hier vergessen?
Wie schaut es aus wenn ich abfragen wie Inner Join habe?
Grundsätlich funktioniert NHibernate mit so ziemlich allen DB-Systemen, mit recht großer Sicherheit auch mit SQLite. Du kannst das DBMS dann auch später recht einfach austauschen.

Im Prinzip trifft es dann schon: Je Tabelle eine Klasse, je Spalte ein Feld. Gibt aber auch komplexere Mappings für Vererbung etc. Wenn du eine genauere Frage hadt, am besten in Datentechnologien stellen.
Für den Anfang bietet sich evtl. ein kleines Testprojekt an, in dem du etwas den Umgang mit Nhibernate übst.

Stored Procedures kannst du zwar einbinden, ich würde aber im Normalfall nicht dazu raten, diese allzu exzessiv einzusetzen. Führt meist zu versteuter Anwendungslogik, schlecht gemanagetem SQL-Code (Versionsverwaktung usw. wird da gerne mal eingespart) und anderen Problemen.
Zitat von ilcsh
Ich habe mir das jetzt anfangs so vorgestellt:
Was sollen wir groß sagen?
Klar - ist eine Möglichkeit. Wie gesagt: Die "richtige" Lösung gibt es nie.
Die Namensgebung des Repository Projektes ist aber IMHO etwas verwirrend, da ein Repository im Normalfall eine Klasse für den DB-Zugriff darstellt.

Thema: Fragen zur Projektstruktur
Am im Forum: Rund um die Programmierung

Zitat von ilcsh
Wo würden dann die Interfaces reinkommen?
Kommt darauf an, welche
Generell ist die Aufteilung auf mehrere Projekte vor allem sinnvoll, wenn sich nicht alle gegenseitig referenzieren. Folglich sollten die Interfaces in das Projekt, wo sie Sinn machen - eine Auslagerung in ein separates Projekt würde ich erst durchführen, wenn das tatsächlich benötigt wird (z.B. wenn das DB-System ohne Rekompilierung ausgetauscht werden soll).
Zitat von ilcsh
Bisher habe ich eine Datenbank Klasse die, die Verbindung zu DB herstellt sowie z.B. DataTable's zurückgibt oder Befehle ausführt, so habe ich es bisher gemacht.
Davon würde ich mich eher verabschieden: DataSets sind zwar in manchen Situationen ganz nett, taugen aber IMHO nicht als Ersatz für Businessobjekte (eingeschränkte Validierungsmöglichkeiten, kein Einbau von Funktionalität möglich, ...).
Zitat
Mit NHibernate und LinqToEntities habe ich noch nie gearbeitet, kannst du mir gute Tutorials auf deutsch empfehlen
Auf deutsch ist immer so eine Sache... Weitaus mehr findet man auf Englisch.
Spontan bin ich z.B. auf: Zweiter Start mit NHibernate gestoßen - allerdings ist das doch recht oberflächlich.

Thema: Fragen zur Projektstruktur
Am im Forum: Rund um die Programmierung

Hallo ilcsh,

ohne deine Frage im Detail zu beantworten, ein paar Anmerkungen meinerseits:

Beide der Links sind von 2008. Das heißt jetzt prinzipiell erst einmal nichts, aber wenn du ein neues Projekt beginnst, solltest du dir bewusst sein, dass die Links aller Voraussicht nach nicht den aktuellen Stand der Technik widerspiegeln könnten.

3-Schichten Modelle sind grundsätzlich sinnvoll, allerdings würde ich bei einem neuen Projekt zu einem sogenannten ORM (Object-Relational-Mapper) raten. Hier sind vor allem NHibernate und LinqToEntities (Entity Framework, EF) verbreitet.
Beide bieten auch Support für LINQ-Expressions, sodass du zum DB-Zugriff z.B. Code schreiben kannst wie:


Customer customer = context.Customers.Where(c => c.LastName == "Müller").FirstOrDefault();
IMHO erleichtert das die Arbeit mit einer DB erheblich, indem es die Menge an (Infrastruktur-)Code deutlich reduziert.

Zum anderen solltest du unbedingt auch ein Design-Pattern für dein UI verwenden: Unter WPF wäre das meiner Meinung nach am besten MVVM und unter WinForms MVP (in der Ausprägung Passive View - wobei es hier verschiedene Standpunkte gibt).

Die Entscheidung für einen DI-Container ist sehr löblich, evtl. kannst du auch mal einen Blick auf andere Container werfen. Ist nur eine persönliche Ansicht, aber IMHO ist Unity nicht der beste, den es gibt.

Bzgl. Projektstruktur würde ich mir zu Beginn noch keine allzu großen Sorgen machen - das ist etwas, was man später auch noch leicht ändern kann.
Beginnen kannst du z.B. mit vier Projekten:
- Views (enthält alle Controls + Codebehinds)
- Presenters (alle Presenter aus MVP)
- Models (alle Businessobjekte + Klassen für NHibernate)
- App (verbindet alles)

Thema: Mit Express-Versionen von VS und MSSQL Anwendung für kommerziellen Einsatz erstellen?
Am im Forum: Smalltalk

Zitat von Reverent
ich dachte nur, da man die Express Versionen umsonst runterladen und benutzen kann, darf ich diese nur für Testzwecke einsetzen.
Unter Umständen bekommst du bzw. deine Frau sogar weit mehr als nur die EE, siehe Microsoft BizSpark.

Thema: Bilder ver-/entschlüsseln
Am im Forum: Rund um die Programmierung

Hallo lassner,

herzlich willkommen hier auf myCsgarp.de!

Wenn du wirklich Plaintext benötigst (z.B. für den Versand), kannst du einen Blick auf Base64 werfen (siehe Convert.ToBase64String).

Thema: WPF Controls Style
Am im Forum: GUI: WPF und XAML

Hallo Steffen2012,

Kleine ergänzung: um den Style wirklich global verfügbar zu machen, kannst du ihn entweder in die Resourcen der App.xaml legen oder ein Theme verwenden, wie in http://www.microsoft.com/germany/msdn/solve/knowhow/howto/cliententwicklung/WieThemeIchEineWPFAnwendung.aspx gezeigt.

Thema: [erledigt] TreeView ItemsSource Binding in eigenem Control
Am im Forum: GUI: WPF und XAML

Hallo Hunv,

ich würde erst einmal damit anfangen, ObservableCollection statt List zu verwenden, und deinen Getter nicht jedes Mal eine neue Liste zurückgeben zu lassen.

Außerdem ist mir noch nicht so ganz klar, was dein Control genau macht bzw. wozu du die DependencyProperty brauchst.
Reicht nicht auch ein "normales" ViewModel als DataContext?