Announcement

Collapse
No announcement yet.

DataBindings: Detail-Anzeige aus 2 Feldern holen?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • DataBindings: Detail-Anzeige aus 2 Feldern holen?

    Hallo,

    ich möchte Daten (typ. Dataset) aus einer Detailtabelle anzeigen. (Das ist natürlich kein Problem.) Ich möchte aber die Anzeige aus 2 Feldern verbinden:

    <u>Master-Tabelle</u> hat Feld: AdressenID
    <u>Detail-Tabelle</u> hat Felder: ID, Nachname, Vorname
    Verknüpfung natürlich über <u>ForeignKey</u>

    Gibt es eine <b>direkte Verknüpfungsmöglichkeit</b> ähnlich wie:
    textName.DataBindings.Add("Text", tblDetail, "Name" + "Vorname");
    (so ist es natürlich Quatsch)

    Oder muss ich dazu über <b>CurrencyManager mit PositionChanged</b> gehen? Oder ist es ein <b>berechnetes Feld "Name+Vorname"</b> (temporär nur im DataSet, nicht in der Datenbank), das in DataBindings zugeordnet wird, das einfachste Verfahren?

    Danke für Hinweise! Jürgen

  • #2
    Hallo,
    in ADO.NET gibt es prinzipiell 2 verschiedene Möglichkeiten:

    1. Im DataSet-Designer wird der DataTable aus dem typisierten DataSet eine neue Spalte hinzugefügt, deren Inhalt im Properties-Editor über die Eigenschaft <b>Expression</b> festgelegt wird. Zur Laufzeit enthält somit die Datenquelle eine berechnete Spalte, die dann über die Datenbindung genutzt werden kann.

    2. Wenn der zusammengesetzte Wert ausschließlich in der Benutzeroberfläche benötigt wird, kann das <b>Format</b>-Ereignis der <b>Binding</b>-Klasse verwendet werden

    Comment


    • #3
      Danke, Herr Kosch,
      ich benutze die Zusammensetzung zwar nur in der Benutzeroberfläche, das aber an mehreren Stellen. Also empfiehlt sich in der Tat eine <b>berechnete Spalte.</b>

      <u>Zusatzfrage:</u> Da ich in VC#E nicht auf Firebird-DBs zugreifen kann und in #D kein typ. Dataset erzeugen kann, finde ich keinen Zugriff auf den Dataset-Designer. Also muss ich die <b>neue Spalte manuell</b> erzeugen.

      Sehe ich es richtig, dass ich dazu der
      public partial class dsDGW : System.Data.DataSet {...}
      eine <b>neue cs-Quelldatei</b> zuordnen muss/soll? Jürge

      Comment

      Working...
      X