Laden...

Forenbeiträge von LatinChriz Ingesamt 211 Beiträge

16.02.2015 - 20:41 Uhr
<Setter.Value>
    <TextBlock Text="{Binding Name}" />
</Setter.Value>

Das ist dein Problem! Damit erzeugst du einen (!) TextBlock der für alle Header verwendet werden soll, das geht mit einem Datensatz noch gut, spätestens der Zweite verursacht aber deine genannte Exception.

Deswegen gibt es den DataTemplate Knote. Denn ein DataTemplate dient als reine Factory des Baumes der darin enthalten ist. Richtig müsstest du also nicht die "Header" Eigenschaft mit deinem Style ändern, sondern die "HeaderTemplate" Eigenschaft! Anschließend den TextBlock in ein DataTemplate packen und... voila! 😃

23.01.2015 - 13:41 Uhr

Als Entwicklerkonferenz fand ich das Anmeldesystem einfach nur schlecht. Macht ja Microsoft nicht direkt sondern "eventcore".
Das System brach unter der Last einfach schön weg - nix mit automatischer Skalierung 😃.

Ich hab ein Ticket ergattern können, hat mich aber knappe 25 Minuten gekostet bis ich durch vier (!) Seiten bin
(Stammdaten, sinnlose Umfrage, ev. Hotelbuchung die ich übersprungen habe und anschließend der geliebte Zahlungsprozess).

Unter Betrachtung von diesen Umständen erstaunt mich der "Hype" um die "schnell" ausverkaufte BUILD 😃.

Alles in allem ist es natürlich eine künstliche Deckelung der Anzahl von Tickets.
Die letzten 2 Jahre bin ich auch auf der Warteliste gewesen, aber immer noch ein paar Wochen später "zugelassen" worden (wie so alle die ich kenne die auf der Warteliste sind/waren).

21.07.2014 - 23:47 Uhr

Genau zu so einer "Grüze" wird das gesamte dann aber...
Wenn niemand im Team nur zur hälfte in der Thematik steckt, bastelt irgendwer mal eben nen Prototypen der sich später "Produkt"
nennt und den man bereits ein halbes Jahr später nicht mehr angreifen möchte da es an jeder Ecke nur so "scheppert".

Da fehlt es an einigem fundamentalen Know-How im Bezug auf die Webentwicklung und das Verständnis von vielen Grundkonzepten in der "modernen Entwicklung".
Wir sprechen heute nicht mehr von statischen Websites die man mal eben bunt zusammenklickt. Auch bringt es nichts einfach mal 10 Fremdprojekte runterzuladen und einzubinden,
da dadurch die Anwendung nicht besser wird - es braucht ein Verständnis dafür wie die Dinge funktionieren und wie sie auch harmonieren.

Das traurige an der Geschichte:
Am Ende steht ihr als Entwickler auch noch Gerade wenn etwas nicht funktioniert.

21.07.2014 - 18:31 Uhr

Das soll bei Gott keine Eigenwerbung sein, aber gerade in so einem Fall, dass die Zeit drängt und es an einer "Technologie" scheitert, rate dazu sich jemanden ins Office zu holen der das Team einerseits schult und anfänglich begleitet.
Genau da kann man seine Fragen gezielt anbringen und sich die Tipps holen die einem die anfänglichen Hürden aus den Weg räumt.

25.06.2014 - 18:51 Uhr

Dann sind wir doch wieder bei dem Thema wo ich anfangs dachte wo du hinwillst?
Du wirst dennoch die "Datenliste" benötigen mit den 30000 Elementen - das kann dir auch egal sein du musst dich eben um die performante "Zeichnerei" der Elemente kümmern.

Das wäre dann ein VirtualiazingCanvas in dem Falle einfach?
Darüber haben sich schon Leute gedanken gemacht:
WPF Performance and .NET Framework Client Profile

Oder versteh ich dich nun wieder falsch?
Weil dann ist dein ItemsPanel kein "normales" Canvas sondern eben ein VirtualizingCanvas.

25.06.2014 - 16:17 Uhr

Finde das irgendwie eigenartig was du vorhast aber soll nichts geben was nicht irgendwer braucht 😃
Comparison operator overloading

*ARGH*: Vollkommen richtig - funktioniert ja nicht weils ein enum ist shameonme

25.06.2014 - 16:05 Uhr

Du kannst dir auch eine Property bauen die eine Action/Func entgegennimmt?
Also im Grunde ein delegate und dort kannst du dann deine jeweilige Methode zuweisen.

Aber ich würde an deiner Stelle nochmal kurz einen Schritt zurückgehen und nochmal auf das Ganze sehen da ich glaube das kannst du einfacher lösen.

Du willst benachrichtigt werden wenn die SMS verschickt worden ist, da würde es sich auch anbieten das per async/await zu machen dh. ein Task?

Ansonsten bau dir die Klasse doch einfach so dass du den EventHandler in der implementierung hältst ?


private event EventHandler<PluginSystem.Host.ISMSVersandErfolgreichEventArgs> _myEvent;

event EventHandler<PluginSystem.Host.ISMSVersandErfolgreichEventArgs> PluginSystem.Host.ISMSVerschicken.SendenErfolgreich
{
            add { _myEvent += value; }
            remove { _myEvent -= value; }
}

25.06.2014 - 15:45 Uhr

Offtopic: Ich find das irgendwie typisch Europa oder? Cloud? Oh nein auf keinen Fall! NSA, Datensicherheit usw. aber dem Hoster "ums Eck" der verglichen mit den Cloudanbietern winzig ist, dem vertraut man.

Merksatz: WENN die NSA deine Daten haben möchte, dann bekommt sie sie auch, egal wo sie liegen 😉 imho

25.06.2014 - 15:42 Uhr

Dann würde ich sowieso mit Code First arbeiten und mir sogar überlegen ob ihr nicht die Automatic Migrations einschaltet.
Das bedeutet jede Codeänderung am Model führt zu einer Datenbankänderung - sofern dies ohne Datenverlustmöglich ist (kann aber konfiguriert werden).

Dies würde ich aber dann wieder abschalten damit man die Kontrolle über die Migrations hat und dann fortlaufend auch mit manuellen Migrations "Snapshots" vom Design erzeugen und dadurch eine Versionierung einführen.

25.06.2014 - 11:20 Uhr

Du musst den Thread auch starten 😉 (--> myThread.Start()).
Weiters solltest du dich etwas in die Basics von Threading einlesen - ein Thread läuft nur solange er auch "beschäftigt" ist.

In dem Code von dir wird die Console auf jeden Fall zugehen, da static void Main() die Hauptmethode ist, und sobald diese abgearbeitet ist, wird die Console geschlossen.

Solange die Threads auch keine BackgroundThreads sind (IsBackground=true) , werden diese den Process sogar noch am Leben erhalten in diesem Falle - ob das gewünscht ist, ist fraglich.

25.06.2014 - 10:43 Uhr

Vollkommen richtig mit der eigenen Domain hört der Spaß dann auf und dann muss man zahlen.
Wenn es aber nur kleinere "spielerein" sind dann reicht die Domain die man von Azure erhält (htt****p://[deinewunschdomain].azurewebsites.net)

...
Und ganz wichtig: Du verwendest nicht ASP.NET, sondern ASP.NET WebForms, das für Datenlastige Anwendungen wie Sharepoint entwickelt wurde. Nicht zu verwechseln mit ASP.NET MVC, das für RIAs ausgerichtet ist und hier generell kein fertiges AjaxToolKit existiert.
...){gray}

Wie war das? "One ASP.NET" 😃

25.06.2014 - 10:06 Uhr

Wenns nur um ein paar kleine Websites geht - dann mach das ganze doch auf nen "System für Männer" und gratis?
Die Cloud Lösung "Microsoft Azure" erlaubt dir bis zu 10 gratis Websites zu hosten und da hast du vollständige Visual Studio Unterstützung auch noch dabei (inkl. remote debuggen usw.).


http://azure.microsoft.com/en-us/develop/net/aspnet/

25.06.2014 - 09:52 Uhr

Kommentier mal die Consolenausgabe (Alsu nur die Zeile Console.WriteLine(..)) aus - die frisst einen erheblichen Anteil der Zeit auf!

22.06.2014 - 12:51 Uhr

...
Das ist der Architektur der darunterliegenden Software geschuldet.
...

Warum dann auf etwas weiter aufbauen, das bereits nicht ganz optimal ist? Warum nicht das ganze wegkapseln damit man eine "sauberere" Architektur hat und auch den Konzepten hinter WCF (bzw. SOA) gerecht wird? Und warum "lieferst"du deine Entities als byte[]-Array aus? Dafür gibt es die Serialisierer in WCF, arbeite doch mit DTOs?

100 Endpunkte sind zwar möglich, aber spätestens der nächste Entwickler wird das selbe Problem haben wie du jetzt:
"Ich muss jetzt etwas machen was nicht im Sinne des Erfinders ist weil meine bestehende Architektur das verlangt..."

Überleg dir auch ob der Client auch wirklich 100 Tabellen einzeln haben möchte oder ob es nicht mehr einen "Context" gibt in dem er arbeitet? Ansonsten schau dir auch mal die WCF-Dataservices an?

22.06.2014 - 12:42 Uhr

Grundprinzip ist soweit schon richtig, du wirst eine Collection benötigen die du an ein ItemsControl übergibst und diese soll sich um die Darstellung kümmern.

Der Container den du dabei verwenden solltest ist zum Beispiel das eingebaute "VirtualizingStackPanel" im .NET Framework da eben dieses nur die Elemente rendert die im unmittelbaren Bereich sichtbar sind.

Dementsprechend Nutze ein ItemsControl und verwende da ein VirtualizaingStackPanel (siehe hier: Link) dann hast du dein Performanceproblem gelöst.

17.06.2014 - 19:23 Uhr

Vorausgesetzt es ist wirklich alles nur lokal und bleibt das auch, dann kannst du mit Windows 8.1 Update 1 eine Brokered App schreiben die auf die WPF-Assembly zum Beispiel zugreift und du packst deine App da drauf (LOB Business Apps - .NET Broker App und Windows Store Apps - Einfacher).

Aber "schön" ist was anderes. Wäre es da nicht denkbar "einfacher" du schreibst ein WCF Service das mit deiner "IPC"-Komponente spricht (bzw. integrierst WCF in deine Komponente sofern das möglich ist) und anschließend lässt du WPF als auch deine Windows 8 App mit dem Service sprechen (was übrigens auch wieder IPC ist..). Wäre natürlich alles etwas einfacher abzuschätzen wenn wir hier wüssten in welchen Umfeld du dich bewegst und was deine IPC-Komponente denn ist bzw. wie die Interprozesskommunikation aufgebaut ist - da gibts die verschiedensten Möglichkeiten.

12.06.2014 - 22:27 Uhr

hmm.... 😕

public string EncodeFilename(string oldString)
        {
            string[] arr = oldString.Split('.');
            int count = arr.Length - 1;

            string newString = HttpContext.Current.Server.HtmlDecode(oldString).ToLower().
                       Replace(arr[count], "").Replace("ä", "ae").Replace("ö", "oe").Replace("ü", "ue").Replace("ß", "ss").
                       Replace(".", "").Replace("&", "").Replace("&amp;", "").Replace("!", "").Replace("'", "").Replace("§", "").
                       Replace("²", "").Replace("³", "").Replace("/", "").Replace(";", "").Replace("*", "").Replace("#", "").
                       Replace(" ", "").Replace("+", "-").Replace("¨", "-").Replace("-", "_") + "." + arr[count].ToString();

            //Ausgabe
            return newString;
        }
10.06.2014 - 08:45 Uhr

... Aus dem Grund bin ich immer sehr skeptisch über die Legalität einer Version, wenn jemand sagt, er hat Ultimate.
Je nach Firmenstatus (zB Goldpartner von MS) und Vertrag mag das sein, aber nicht als Einzelperson oder kleine Firma....

BizSpark bietet für Startups, für die ersten Drei Jahre ein MSDN Abo gratis an - inkl. VS Ultimate - also kleinen Firmen und Einzelunternehmen glaub ich das relativ schnell 😃.

@bredator: Warst schneller 😃

29.04.2014 - 16:43 Uhr

@Coffeebean: Jap du hast Recht, hab das wohl überlesen, dass Sie sich mit MVVM bereits beschäftigt. Klang für mich nach einer Basic Frage und da werfe ich ungern jemanden sofort MVVM an den Kopf...

Ps. ... du willst nicht wissen welche Firmen ohne MVVM schon wie weit "gekommen" sind 😃

29.04.2014 - 15:10 Uhr

Ich glaube du solltest dir die Grundlagen von WPF anschauen.
So wie ich das verstehe geht es dir um das Ein/ausblenden von Inhalten in einem Fenster.

Das geht im einfachsten Falle indem du Elementen im XAML einen Namen gibst:

<TextBox Name="tb"/>

und im Code kannst du daraufhin auf die Elemente zugreifen:

tb.Visibility = Visibility.Visible;

Das ist die "einfachste" Variante, aber WPF bietet hierbei ganz andere Konzepte an um solche Szenarien wie von die gewünscht umzusetzen. Schau dir einfach ein paar Tutorials dazu an.

25.04.2014 - 08:37 Uhr

Also ohne Code können wir hier nun leider nur raten 😃 ?

23.04.2014 - 19:36 Uhr

Eine ObservableCollection nimmt jeden Datentyp, da kannst du sogar ein dynamic verwenden (ObservableCollection<T>).

Im Falle, dass es dir gänzlich unbekannt ist, welches Object daherkommt, verwende eine ObservableCollection<object> und das DataGrid verwendet sowieso Reflection um darauf zuzugreifen und die Properties aufzulösen - das kannst du über AutoGenerateColumns steuern.

23.04.2014 - 16:44 Uhr

Ich hab das gerade mal eben "schnell" ausprobiert, und stimmt - bei der Verwendung von RemoveAt knickt die Performace ziemlich ein. Hab hier leider Reflector nicht installiert um reinzuschauen, aber mit ner Quick&Dirty ObservableCollection konnte ich die Performance ohne Probleme halten.

Wobei ich hier das ColectionChanged nur nach der vollständigen Änderung aufrufe, und auch noch genau angebe welche Elemente weg sind.

23.04.2014 - 09:46 Uhr

Von welchen Datenmengen sprichst du denn ? 100 ? 1000 ? 100000 ?
Wie sieht dein XAML dazu aus?
WPF geht auch irgendwann in die Knie bei genügend Daten, es hilft dabei auch auf eine eigenes ObservableCollection zu gehen, die nicht bei jedem neuen Item sofort ein CollectionChanged ausführt.

16.04.2014 - 21:27 Uhr

Du verwendest async/await hier einfach "etwas" kompliziert und ich glaube du hast noch ein Verständnisproblem?

Besser wäre;



public class DBInsertClient
{
    public Task Routine;
    public CancellationTokenSource AsyncCancelTokenSource = null;

    public async void StartInsertDataBaseRoutine()
    {

                    using (MySqlCommand mySQL_CMD = new MySqlCommand("INSERT ......", Connection))
                    {
                        mySQL_CMD.Parameters.Add("?Value", MySqlDbType.UInt32).Value = 0;
                        await mySQL_CMD.ExecuteNonQueryAsync(AsyncCancelTokenSource.Token);
                    }
                }
    }
}

ADO.NET bietet dir hierbei bereits eine NonQueryAsync an, diese liefert einen Task den du "awaiten" kannst.

31.03.2014 - 10:56 Uhr

Schau dir mal das Projekt Selenium an:
Selenium WebDriver 2.41.0

Kleiner Einstieg ist hie gezeigt:

Stackoverflow

25.03.2014 - 17:39 Uhr

Was mir gleich aufgefallen ist:


 copied += (int)fi.Length;
                copied /= 1024;

Du zählst also jedesmal die Länge hinzu, und dividierst jedes mal (!) durch 1024.

25.03.2014 - 17:31 Uhr

Hi,

also wenn du Database First verwendest, empfehle ich dir einfach mal das Model von der Datenbank upzudaten und davor ev. das Model selbst zu leeren damit es Konsistent mit der Datenbank ist.

  1. Ich glaube nicht, dass es ein Fehler ist. "Convention over Configuration" bedeutet es werden gewisse Standardeinstellung vorgenommen. Zum Beispiel wenn ein Property ID heißt, wird das automatisch zu einem PK Attribut.

  2. Ich kann mir leider auch nicht vorstellen wo du die Attribute direkt hinschreibst? In den Output der TT - Files? Dann sind die Änderungen beim nächsten Speichern des Models wieder weg. Zusätzlich wäre das Attribut für ein Schlüsselattribut "Key" und nicht "HasKey".

  3. Wenns wirklich Database First ist - Model kicken, und von der Datenbank abholen erneut

  4. Kommt m.M.n auf die Richtung der Änderungen an. Hast du die Gewalt über das Design der Datenbank? Dann finde ich es einen sehr eleganten Weg alleine wegen den Migrations. Hast du diese nicht, kann ich davon nur abraten, da du dir damit mehr Probleme einfängst.

25.03.2014 - 13:52 Uhr

"Sexy" ist zum Glück relativ....

Ich hab mit der Entwicklung irgendwie mentale Schwierigkeiten, da ich die Vorzüge eines Compilers einfach schätze 😃. Mit JS verbrauch ich schon wieder soviel Zeit mit Tippfehler suchen etc.

25.03.2014 - 13:10 Uhr

Hallo,

habe die letzten Tage und Wochen ein sehr ähnliches Erlebnis erleben dürfen.
Je mehr man mit HTML/Javascript arbeitet umso weniger brauch ich das ganze MVC-Werk.
Im Grunde reduziert es sich anschließend vollständig auf ein Frontend getrieben durch HTML/JS und ein Backend das einfach nur Daten bereitstellt.

Im Frontend habe ich mit Angular.JS gearbeitet und das war durchaus komfortable sobald man sich an die Vorgehensweise gewöhnt hat.
Die Benutzerauthentifizierung kannst du ja wie gewohnt per WebAPI machen.

Im Frontend kannst du ja auf die HTTP Result Codes zum Beispiel lauschen und dementsprechend bekommst du ja keine Daten und kannst den Benutzer auch umleiten.

19.03.2014 - 17:46 Uhr

Weil ElementName der Name des Elements ist, und das Element nicht "this" heißt.
Wenn du aber auf dich selber binden willst (Also im Sinne von this), dann ist der Syntax:


{Binding RelativeSource={RelativeSource Self}}

19.03.2014 - 17:16 Uhr

Welche .NET Version verwendest du denn?
Mit .NET 4.0 wurde da doch etwas gröberes geändert:

To improve performance in interoperability with unmanaged code,
incorrect calling conventions in a platform invoke now cause the application to fail.
In previous versions, the marshaling layer resolved these errors up the stack.

Siehe auch hier: PInvokeStackImbalance in .NET 4.0…I beg your pardon?

Ist die C++ Seite denn auch korrekt gemacht worden, und die Funktion exportiert worden (dllexport) C# und C++ ? Geschüttelt, nicht gerührt! ?

19.03.2014 - 17:11 Uhr
  1. Ja WPF ruft immer ToString() auf beim darstellen von Datentypen die nicht graphischer Natur sind (UIElement).

  2. Für die "wirkliche" Lösung des Problems müssten wir Wissen, wie die Klasse "Person" aufgebaut ist, und welche Properties dafür vorhanden sind

  3. Würde ich das vor allem im XAML lösen, da das deutlich komfortabler ist (sobald man es etwas lesen/schreiben gelernt hat)

  4. Wie immer bei WPF: Binding würde dir auch hier einiges ersparen. Deswegen verweise ich gerade mal eben auf diesen Thread hier, da hängt ein wirklich sehr kleines Beispiel drin. (Link)

19.03.2014 - 17:04 Uhr

Das Load wird das eplizite Laden durch EF von Entitäten und NavigationProperties sein; also die Materialisierung von Lazy Ladin-Contexten.

Ha! War ich mir gerade nicht sicher 😉 Danke.

19.03.2014 - 16:56 Uhr

Gleich vorweg - Schau dir den Bindingmechanismus von WPF an, und dann arbeit dich etwas in MVVM ein.
Mit WPF bekommst du ansonsten irgendwann sonst ein grobes "Problemchen" früher oder später weil du sehr oft "um die Kirche herum" programmierst - also zu komplex.

Wenn ich mir deinen Code so anschaue, werde ich leider nicht ganz schlau draus,
da ich nicht weiss was HVVEntities für eine Klasse ist, da mit die .Load() Methode hinter deinem LINQ Statement etwas eigenartig vorkommt.
Da würde ich adhoc auch vermuten, dass du ein refresh Problem hast, d.h. du sagst zwar Items.Refresh() aber die Daten kommen erst danach.

Genau aus diesem Grunde Binding+MVVM, da sich dann das Binding um den Refresh kümmert, auch wenn die Daten "später" geladen werden.

EDIT: Ein kleines Mini(!) Beispiel im Anhang schnell, nachdem das hier immer wieder auftaucht.

19.03.2014 - 11:56 Uhr

Hi,

was Abt glaub ich meint ist, dass du dich damit beschäftigen sollst wie der "Prozess" aussieht und wie der Generator arbeitet.

Im Grunde besteht das EntityFramework aus der Basisklasse DbContext und die Ableitung davon hat halt, die jeweiligen Properties und POCO Klassen.
Falls du nun gerne einen Konstruktor hast dann musst du die Templatevorlage ändern - also die *.tt Files,
und diese werden bei jedem speichern/ändern vom Modell neu ausgeführt.

Konkret bedeutet es bei dir du musst im DbContext Generator File dir den Konstruktor raussuchen,
diesen erweitern oder überladen und die Basisklasse von DbContext hat bereits den gewohnten Konstruktor für den Connectionstring.
Ist also im Grunde eine Zeile die du ändern musst und damit hast du das Problem erledigt.

Ich hab über T4 mal einen ganzen Vortrag gehalten und die Unterlagen findest du hier:
T4 Code Generation

18.03.2014 - 10:52 Uhr

Sollte folgendermaßen funktionierne:


Source="/DLLName;component/MyImageForlder/Picture.png"

14.03.2014 - 13:53 Uhr

Gibts auch eine Fehlermeldung dazu?
Prinzipiell würde ich mir die Basics von WPF nochmal kurz ansehen (Bindings etc.).
AdHoc würde ich das ganze etwas anders lösen:

Im Xaml:

<ListBox x:Name="lb">
<ListBox.ItemTemplate>
<DataTemplate>
<Image Source="{Binding"}/>
...

und im Code-Behind:

lb.ItemsSource = new[]{ "C:\\Users\\Lukas\\Desktop\\bilder_spielautomat\\symbol1.png",
"C:\\Users\\Lukas\\Desktop\\bilder_spielautomat\\symbol2.png",
...
};

Nur mal Quick&Dirty...

24.02.2014 - 10:43 Uhr

Hi,

nicht böse sein - aber hast du dir während du das getippt hast irgendwann mal gefragt: "Mühsam?"...

Beschäftige dich doch bitte etwas mit den Grundlagen, 30x das selbe tippen macht nicht Spaß und ist auch nicht Sinn hinter Softwareentwicklung.

Lies dich mal in die Grundlagen wie Klassen, OOP und Events ein das hilft die unter WinForms weiter. Nur als Denkanstoß, all deine Eventhandler machen das selbe nur mit unterschiedlichen max. Werten...

20.02.2014 - 14:30 Uhr

Dann benötigst du im ViewModel halt eine Aktion (=Methode) die das XML File neu erstellt und den neuen Kunden dort einträgt.

19.02.2014 - 13:11 Uhr

Deine Klasse teilt der Oberfläche nicht mit, dass Sie sich ändert, und deswegen siehst du auch keine Änderung.

MVVM ist meiner Meinung nach immer so ein unnötig kompliziert beschriebenes Thema - und dennoch ist es notwendig - nur mal kurz Umrissen für dich.

  • Schreibe eine Klasse HerstellerViewModel:

public class HerstellerViewModel
{
public Hersteller Model {get;set;}
public string Name {get{return Model.Name;} set { Model.Name = value;}}
}

  • Binde nun auf die ObservableCollection deiner HerstellerViewModels und fülle das Model Property jeweils (ist ein LINQ Statement)
  • Baue nun in dein ViewModel das INotifyPropertyChanged ein - schwupps dann wird die Änderung in der Oberfläche auch zu sehen sein.
19.02.2014 - 11:35 Uhr

Wie sieht denn deine Hersteller Klasse aus ? Hat diese das INotifyPropertyChanged Interface implementiert?

17.02.2014 - 21:03 Uhr

Im Grunde musst du dir einmal die Frage stellen für das Frontend - Web- oder Nativeentwicklung.
Das Bedeute soll es eine HTML/CSS/JS/ASP.NET-Webanwendung werden oder eher Richtung WinForms/WPF/Windows Phone?
Das ist mir leider nach deiner Frage nicht ganz klar... Installieren musst du "nur" Native Anwendungen, eine Webanwendung läuft zentral am Webserver (z.b. Gratis Angebot von Windows Azure?), eine Native Anwendung muss/kann installiert werden und läuft lokal am Zielrechner.

Für deine Datenhaltung würde ich dir zu einer SQL-Datenbank raten, da du da sehr viel Material im Internet findest wie das ganze funktioniert.
Stichwort hierfür wäre im .NET Bereich ADO.NET, und als Datenbank würde ich die LocalDb empfehlen (ein SQL-Server auf Abruf)
die du mit .NET 4.0.3 automatisch installiert hast.

Les dich dazu einfach mal bei Wikipedia ein, was du mit dem .NET Framework überhaupt machen kannst, WinForms, WPF,ASP.NET WebForms/MVC, ADO.NET, EntityFramework da findet sich massenhaft Literatur dazu.

04.02.2014 - 11:29 Uhr

Wann greifst du denn auf das Content Property zu? Im Konstruktor ist dieses natürlich noch nicht gefüllt, schau mal erst im Loaded Event nach ?

30.01.2014 - 14:19 Uhr

Hi,

poste doch das XAML mal von der Statusbar?
Das sieht für mich aber aus, als hätte die Statusbar eine fixe Höhe (Height="20") oder sowas. Und in Kombination, dass der TextBlock/Label da drinnen wahrscheinlich im alten Style ein größeres Margin hat, wird er abgeschnitten...

Nur mal so ins Blaue geraten?