Frage

Hintergrund / Kontext für diese Frage: Ich habe eine WPF-Desktop-Anwendung. Es verwendet Linq an SQL, um eine Verbindung zu seiner SQL-Datenbank herzustellen, und er zeigt seine Daten in WPF-Datagrids an. Es funktionierte ziemlich gut, aber die Leistung war ein Problem, weil Linq tödlich langsam sein kann, sodass ich meine Logik- und UI-Steuerelemente von LINQ-Datenbankkontexten so weit wie möglich umschalten und stattdessen in lokale Variablen laden, die sehr ähnlich sind Die Linq-Objekte, die die Leistung massiv verbessert.

das problem: Wenn ich meine DataGrids teste, bekomme ich jetzt eine neue Ausnahme " Zwei-Wege-Binding erfordert Pfad oder XPath erforderlich. " Wenn ich versuche, den Wert in einer bestimmten (Ganzzahl zu bearbeiten ) Spalte eines DataGrid, obwohl die Bearbeitung von String-Säulen in Ordnung war. Ich verstehe nicht, warum ich das bekomme oder was ich dagegen tun soll.

So funktionierte es, wenn der Datagrid.DataContext auf einen Linq-Entity-Association eingestellt wurde, aber es funktioniert jedoch nur dann, wenn es auf eine Liste von einfachen Objekten eingestellt ist. Ich habe versucht, die Liste auf eine Observablecollection zu ändern, aber dies hatte keinen offensichtlichen Effekt.

Ich habe mich hier über ein Dutzend verschiedene verwandte Fragen angesehen und auf anderen Sites angesehen, und ich sehe nichts, was zu helfen scheint.

Derzeit habe ich: generasacodicetagpre.

... generasacodicetagpre.

das an den Code gebunden ist: generasacodicetagpre.

das definiert ist als: generasacodicetagpre.

dessen gebundene Mitglieder sind: generasacodicetagpre.

Ich habe kurz nach dem Tippen eine sehr einfache Lösung gefunden, die ich poste, wenn die Site mich nach seiner 8-Stunden-Verzögerung lässt.

War es hilfreich?

Lösung 3

ok, na ja, ich habe alles getippt, in dem ich etwas versuchte, was funktionierte.Ich poste trotzdem, falls es anderen hilft.

Die Lösung bestand darin, den Problemvariablen hinzuzufügen, die gebunden sind:

{bekommen;einstellen;}

wie in: generasacodicetagpre.

Andere Tipps

Ich rannte mit einem gebundenen Textfeld in dieses Problem.Meine Lösung bestand darin, explizit an ".".: generasacodicetagpre.

das hat den Trick getan.

Eine "Zwei-Wege-Bindung erfordert Pfad oder XPath" -Fehler kann aufgrund eines kleinen Unterschieds im Namen des Pfads in dem XAML vsHE derjenigen verursachen.Das Hauptschreiben ist wirklich wichtig!Das war mein Problem.

xaml: generasacodicetagpre.

c #: generasacodicetagpre.

Dies führt dazu, dass eine zweiwege Bindung einen Pfad- oder XPath-Fehler erfordert, da sie nicht genau dasselbe sind und die Programme den Bindungspfad nicht finden können!

Vielleicht wird es jemandem helfen, der den gleichen Fehler gemacht hat

Man kann manchmal eine seltsame kleine Sache tun, wenn Sie am Ende des Tages müde werden. Ich habe eine DataGrid-Bindung an ein Entity-Framework-Entität namens abhängige - Felder Name_Of_Dependant / Beziehung / Date_of_Birth. Irgendwie habe ich gemerkt, um neue Eigenschaften zu erstellen: FullNamen / Beziehung / DateOfburth - alle richtigen Typen.
Also blieb ich in meinem DataGrid an ein generasacodicetagpre.

Aber meine Säulen sollten dann an die Spalten in meiner Entitätstabelle abhängig binden. Das ist richtig: generasacodicetagpre.

Das war falsch: generasacodicetagpre.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top