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

  • »
  • Community
  • |
  • Diskussionsforum
Wie kann ich im Xamarin XElemente in einem ListView binden?
Teleporter
myCSharp.de - Member



Dabei seit:
Beiträge: 3

Themenstarter:

Wie kann ich im Xamarin XElemente in einem ListView binden?

beantworten | zitieren | melden

Hallo!

Ich beschäftige mich seit ein paar Wochen mit C# unter Xamarin und kämpfe derzeit mit dem Databinding. Ansatzweise hab ichs verstanden. Aber nicht immer geht es wie es soll.

Aktuell habe ich einen ListView, der XElemente darstellen soll. Die Source ist zugewiesen und mit

<Label Text="{Binding Name}"...

kann ich den Namen der XElemente anzeigen lassen. Nun will ich aber nicht
den Namen sondern ein Attribute anzeigen. Also verwende ich

<Label Text="{Binding Path=Attribute[NameDesAttributes].Value}"....

und nichts passiert. Auch keine Fehlermeldung.
Wo liegt der Fehler ? Kann mir jemand helfen ?

Danke und Gruß
Thomas
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15536
Herkunft: BW

beantworten | zitieren | melden

Binding Errors siehst Du im Output Window von Visual Studio.

Warum aber bindest Du überhaupt ein Datenmodell wie XElement?
Warum bindest Du kein Modell? Was ist der Sinn?
private Nachricht | Beiträge des Benutzers
Teleporter
myCSharp.de - Member



Dabei seit:
Beiträge: 3

Themenstarter:

beantworten | zitieren | melden

Visual Studio meldet hierzu keinen Fehler.

Warum ich das so mache ? Naja, ich probier halt rum und versuche die Grenzen auszuloten. Die Idee komplett auf ein Zischenmodell zu verzichten find ich sexy. Und da ich beim Einlesen eines XMLs Objekte bekomme, die das Datenbinding prinzipiell unterstützen sehe ich wenig Sinn daraus nochmal andere Objekte zu generieren. Laut diversen Beschreibungen soll es doch gehen.
private Nachricht | Beiträge des Benutzers
witte
myCSharp.de - Member



Dabei seit:
Beiträge: 960

beantworten | zitieren | melden

Der Sinn von Objekten besteht darin dass sie nicht nur einen Zustand sondern auch ein Verhalten kapseln: Man kann Methoden auf Objekten aufrufen. Das macht die Verarbeitung komplexer Prozesse einfacher als ein XML mit externen Funktionen anzufassen und zu manipulieren. Möglicherweise ist es schneller die XML-Struktur in Modellobjekte umzuwandeln als immer wieder umständlich nach XML-Bindungsfehler zu suchen.
private Nachricht | Beiträge des Benutzers
Teleporter
myCSharp.de - Member



Dabei seit:
Beiträge: 3

Themenstarter:

beantworten | zitieren | melden

Dem stimme ich durchaus zu. So hab ich es auch zuerst probiert bis ich gesehen habe, dass es auch ohne Modell gehen müsste. Und da ich das XML nur lesen und nicht bearbeiten muss möchte ich eben jetzt diesen Weg probieren.
private Nachricht | Beiträge des Benutzers
Th69
myCSharp.de - Experte

Avatar #avatar-2578.jpg


Dabei seit:
Beiträge: 3955

beantworten | zitieren | melden

So wie ich das in Übersicht über die WPF-Datenbindung mit LINQ to XML sowie Dynamische Eigenschaften in LINQ to XML verstehe, ist das Binden an diese dynamische Eigenschaften speziell in WPF implementiert (und nicht in Xamarin).

Sofern du Xamarin.Forms verwendest, könntest du wohl dessen Bindungswertkonverter für Xamarin.Forms verwenden, s. den Code in XDocument binding Elements and Attributes (du müßtest dann beim Binding noch diesen Converter angeben).
private Nachricht | Beiträge des Benutzers