.NET GUI

.NET Community rund um alle Graphical User Interface (GUI) Themen.
Willkommen bei .NET GUI. Anmeldung | Registrieren | Hilfe | Impressum | Forumsregeln
in Suchen

ControlTemplate vs. DataTemplate

Letzter Beitrag 07-15-2008 10:26 von Norbert Eder. 7 Antworten.
Seite 1 von 1 (8 Treffer)
Beiträge sortieren: Zurück Weiter
  • 07-09-2008 9:01

    • knatterton
    • Top 10 Mitwirkender
    • Registriert am 07-09-2008
    • Beiträge 33
    • Punkte 630

    ControlTemplate vs. DataTemplate

    Kann mir jemand den Unterschied oder die Anwendungsgebiete eines ControlTemplates und eines DataTemplates erklären?

    Mit einem Datatemplate lege ich die hirarchische Struktur und das Databindung zu einer CRL-Klasse fest.

    Das gleiche kann man aber auch mit einem ControlTemplate machen.

    Wenn ich mir aber eine Listbox anlege und in dieser Listbox sollen Button mit einem Image und einem Label angezeigt werden mache ich das mit einem ItemContainerstyle und in diesem ist ein ControlTemplate. In dem Controltemplate mache ich dann das Databinding. Kein Datatemplate zu sehen.

    Wenn ich aber nur einen Button anlege mit einem Image und einem Label funktioniert das nur mit einem Datatemplate. Warum habe ich hier noch die Möglichkeit ein Controltemplate anzulegen?

    Kombiniere...
    Abgelegt unter: ,
    • Beitragspunkte: 20
    • IP-Adresse ist Registriert
  • 07-09-2008 19:39 Antwort zu

    • Norbert Eder
    • Top 10 Mitwirkender
      Männlich
    • Registriert am 04-09-2008
    • Graz / Austria
    • Beiträge 502
    • Punkte 7.469
    • ForumsAdministrator

    AW: ControlTemplate vs. DataTemplate

    Ein ControlTemplate wird verwendet, um eine Element, welches von Control ableitet, aussieht. Jetzt ist es so, dass Elemente einen Inhalt haben können. Dieser Inhalt kann beispielsweise ein beliebiges Element sein, Text, usw. Ein DataTemplate beschreibt, wie dieser Inhalt dargestellt wird.
    • Beitragspunkte: 20
    • IP-Adresse ist Registriert
  • 07-10-2008 8:29 Antwort zu

    • knatterton
    • Top 10 Mitwirkender
    • Registriert am 07-09-2008
    • Beiträge 33
    • Punkte 630

    AW: ControlTemplate vs. DataTemplate

    Ok...

    Mit den ControlTemplates habe ich schon einige Sachen ausprobiert. Wie ich einen Button darin im Aufbau und Aussehen verändere und wie weit die Styles gehen ist mir jetzt klar.

    Angenommen der Button ist jetzt soweit fertig. Wie bekomme ich nun Daten in diesen Button rein? Den Pfad für das Image und den Text für das Label wenn ich das per CLR machen will?

    Wenn ich im ControlTemplate ein Binding vornehme kommen die Daten dort nicht an. Mit einem Datatemplate schon aber nur wenn das Controltemplate nicht mit drin hängt.

    Kombiniere...
    • Beitragspunkte: 20
    • IP-Adresse ist Registriert
  • 07-10-2008 10:23 Antwort zu

    • Norbert Eder
    • Top 10 Mitwirkender
      Männlich
    • Registriert am 04-09-2008
    • Graz / Austria
    • Beiträge 502
    • Punkte 7.469
    • ForumsAdministrator

    AW: ControlTemplate vs. DataTemplate

    • Beitragspunkte: 20
    • IP-Adresse ist Registriert
  • 07-14-2008 12:21 Antwort zu

    • knatterton
    • Top 10 Mitwirkender
    • Registriert am 07-09-2008
    • Beiträge 33
    • Punkte 630

    AW: ControlTemplate vs. DataTemplate

    Das hilft mir nicht weiter. War auch nicht meine Frage. Ich dachte ich würde es mit dem Buttonbeispiel etwas deutlicher machen.

    Ein Datatemplate wird benutzt um zu beschreiben wie die Daten auszusehen haben. Hmm ... Das gehört aber doch auch schon zum Layout. In dem Beispiel wo du mich hingewiesen hast, wird der Button mit einem in einem Style eingebetteten Controltemplate realisiert. Ein Datatemplate ist dort nicht zu sehen. Scheinbar kommen die Daten ja auch richtig am Button an. Man kann aber auch die Daten mit einem Controltemplate in den Button bekommen. Ich kann dann aber das Standardtemplate nicht mit einem Datatemplate überschreiben. Es sind ja auch zwei unterschiedliche Templates. Und an dieser Stelle ist mein Verständnisproblem. Wann nehme ich ein Datatemplate und wann ein Controltemplate? Beides mischen kann ich ja auch nicht.

    Kombiniere...
    • Beitragspunkte: 20
    • IP-Adresse ist Registriert
  • 07-14-2008 19:24 Antwort zu

    • Norbert Eder
    • Top 10 Mitwirkender
      Männlich
    • Registriert am 04-09-2008
    • Graz / Austria
    • Beiträge 502
    • Punkte 7.469
    • ForumsAdministrator

    AW: ControlTemplate vs. DataTemplate

    Answer
    Ok, ich probiere es nochmal:

    DataTemplate

    Ein DataTemplate wird auf Items angewandt. Siehe beispielsweise die Items einer ListBox, ListView oder ähnlichem. Es wird also der Visual Tree eines Items näher spezifiziert.

    ControlTemplate

    Templates für Steuerelemente. Hier wird der Visual Tree eines Steuerelements spezifiziert.

    Das bedeutet, dass du für ein Steuerelement immer ControlTemplate verwenden solltest. Geht es um die Darstellung von Items in einer Auflistung (innerhalb eines Steuerelements), dann bist du mit einem DataTemplate genau richtig.

    • Beitragspunkte: 20
    • IP-Adresse ist Registriert
  • 07-15-2008 8:14 Antwort zu

    • knatterton
    • Top 10 Mitwirkender
    • Registriert am 07-09-2008
    • Beiträge 33
    • Punkte 630

    AW: ControlTemplate vs. DataTemplate

    Big Smile Hey vielen Dank. Das ist mal ne klare Aussage.

    Kombiniere...
    • Beitragspunkte: 20
    • IP-Adresse ist Registriert
  • 07-15-2008 10:26 Antwort zu

    • Norbert Eder
    • Top 10 Mitwirkender
      Männlich
    • Registriert am 04-09-2008
    • Graz / Austria
    • Beiträge 502
    • Punkte 7.469
    • ForumsAdministrator

    AW: ControlTemplate vs. DataTemplate

    • Beitragspunkte: 5
    • IP-Adresse ist Registriert
Seite 1 von 1 (8 Treffer)
Powered by Community Server (Commercial Edition)    Hosting powered by 69° media solutions