ItemTemplate für ein Item ändern
-
Dienstag, 13. November 2012 12:53
Hallo,
ich habe ein GridView mit ItemTemplate. Ist irgendwie möglich in C# (also programmatisch) das ItemTemplate für ein einzelnes Item aus der ViewSource zu ändern?
Viele Grüße
Oliver
Alle Antworten
-
Mittwoch, 14. November 2012 08:02
Hallo,
das stichwort ist hier "ItemTemplateSelector" hierfür brauchst du dann ein Klasse welche von IValueConverter ableiten und dann bei einer überschriebenen Convert Methode das Template zurückgeben, welches zu dem übergebenen Object passt.
Viel Glück ;)
Raphael
-
Mittwoch, 14. November 2012 08:02
Hi,
der Link [1] ist zwar etwas unuebersichtlich, aber zeigt einen Weg auf.
Ansonsten wird dir oft vorgeschlagen, mehrere GridViews uebereinander zu legen und das passende sichtbar zu schalten [2].
Ich wuerde als erstes mal den Weg ueber verschiedene ItemsControls gehen, wo du ja dediziert ein Template definieren kannst [3].
Wie in der Reference [4] zu sehen ist, scheint das Item Objekt sehr stupide zu sein [4]?
LG, Tobi
[1] http://leeontech.wordpress.com/2012/03/01/customizing-gridview-items-in-metro-app-4/
[2] http://stackoverflow.com/questions/11657618/metro-app-change-gridview-itemtemplate-programatically
[3] http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.controls.itemscontrol.itemtemplate
[4] http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.controls.itemcollection.item
Best Regards. When you see answers and helpful posts, please click Vote As Helpful, Propose As Answer, and/or Mark As Answer. This helps us build a healthy and positive community.
-
Mittwoch, 14. November 2012 09:28
Die frage ist wieso das überhaupt programmatisch sein muss ???
Der Weg mit dem ItemTemplateSelector ist für mich der saubere weg, wo auch programmatisch anhand vom Object unterschieden werden kann, welches Template benutzt werden soll. Desweiteren ist der Vorteil das es im XAML-Code vorhanden ist.
http://leeontech.wordpress.com/2012/03/03/using-datatemplateselector-in-metro-style-app/
http://babaandthepigman.wordpress.com/2012/02/08/datatemplateselector-winrt/
Beispiele mit einem DatatemplateSelector
-
Mittwoch, 14. November 2012 11:10
Danke erstmal an euch beide ;) Werde mich mal durch die Links arbeiten.
Es ist folgende Situation: Ich habe eine App mit einer GroupedItemsPage. Das GridView hat ja ein ItemTemplate. Jede Kachel zeigt bestimmte Infos an. Texte und Bilder,.... Jetzt soll die erste Kachel jeder Group aber nicht nach diesem Template sein, sondern halt ein anderes. Konkret: Die erste Kachel jeder Group soll Werbung enthalten. Ich wüsste nicht, wie das in XAML gehen soll, deswegen programmatisch. Aber ich schaue mich erstmal auf den Seiten um.
-
Mittwoch, 14. November 2012 12:29
hier nochmal ein link wo genau dieses besprochen wird:
http://stackoverflow.com/questions/11798871/different-item-size-in-a-grouped-gridview
:) viel erfolg
- Als Antwort vorgeschlagen RaphaApp Mittwoch, 14. November 2012 12:29
- Nicht als Antwort vorgeschlagen RaphaApp Mittwoch, 14. November 2012 12:29
- Als Antwort markiert Tobias.Oliver.Khan Donnerstag, 15. November 2012 16:51
-
Donnerstag, 15. November 2012 16:51
also,
@Tobias Scholze:
die Variante mit mehreren GridViews hilft mir an der Stelle nicht weiter. Außerdem keine (finde ich) elegante Lösung ;)
Link 1 war hilfreich!
@RaphaApp:
Danke! Deine Links waren auch hilfreich. Vor allem der letzte von StackOverflow kommt meinem am nähsten.
-
Donnerstag, 15. November 2012 17:44
Ajo,
freut mich, dass dir geholfen werden konnte!
LG, Tobi
Best Regards. When you see answers and helpful posts, please click Vote As Helpful, Propose As Answer, and/or Mark As Answer. This helps us build a healthy and positive community.

