Hallo,
besonders an @Nofear23m weil WPF Gott
Vielleicht kann mir jemand helfen weil ich mir eine Aufgabe vorgenommen habe, die leider weiß Gott meine WPF Kenntnisse übersteigen.
Ich will einen Shop Editor für ein Game basteln der sehr einfach ist. Jeder Shop ist gleichzeitig ein NPC mit einem Namen, in einer ComboBox habe ich schon ein Binding auf meine NPC Liste gemacht und das funktioniert auch prima.
Jetzt kann jeder Shop / NPC bis zu 4 Tabs haben. An sich ist es im Spiel nichts anderes als ein TabControl mit aber max. 4 Tabs. Meistens sind das dann Kategorietabs wie z.B. Tab 1 = Lebenstränke, Tab 2 = Manatränke, Tab 3 = Sonstige Tränke, Tab 4 = Premium Tränke. Prinzip damit denke ich klar.
Jeder Tab kann dann theoretisch unendlich Items beinhalten. Ein Tab hat also eine Liste von Items.
Nun zum Shop Editor. Wie schon erwähnt, ich wähle den zu bearbeitenden Shop in der ComboBox aus und in meinem ViewModel habe ich schon eine Liste mit allen schon existierenden ShopDaten.
Prinzipiell ist das eine List<NPC>, die NPC-Klasse hat ein Shop -Member of Type Shop, darin ist eine List<ShopTab> und ShopTab hat eine List of Items.
Mein Datentemplate hatte ich jetzt für mein komplettes TabControl mir so vorgestellt:
Ich habe gelesen, dass das ContentTemplate des TabControls für den Content auf der TabPage ist und das ItemTemplate ist für den Headerbereich jedes TabItems, da mir der Headerbereich egal ist und einfach den Namen des Shop Tabs bekommt benötige ich dort glaub ich keine Anpassung oder?
Jedenfalls war die Überlegung beim ContentTemplate halt ein ListView darin, und das ItemTemplate der ListView ein StackPanel Horizontal ausgerichtet welches dann ein Bildchen vom Item und den Item Namen (erstmal nur Item Id) enthält.
Problem ist jetzt wie ich das ganze zur Laufzeit befülle, da hab ich keine Ahnung wie das gehen soll und für Tipps oder Korrekturen in meinem XAML bin ich natürlich offen, vielleicht funktioniert es ja auch nicht so wie ich mir das vorstelle?
Danke im Voraus
Mfg
besonders an @Nofear23m weil WPF Gott
Vielleicht kann mir jemand helfen weil ich mir eine Aufgabe vorgenommen habe, die leider weiß Gott meine WPF Kenntnisse übersteigen.
Ich will einen Shop Editor für ein Game basteln der sehr einfach ist. Jeder Shop ist gleichzeitig ein NPC mit einem Namen, in einer ComboBox habe ich schon ein Binding auf meine NPC Liste gemacht und das funktioniert auch prima.
Jetzt kann jeder Shop / NPC bis zu 4 Tabs haben. An sich ist es im Spiel nichts anderes als ein TabControl mit aber max. 4 Tabs. Meistens sind das dann Kategorietabs wie z.B. Tab 1 = Lebenstränke, Tab 2 = Manatränke, Tab 3 = Sonstige Tränke, Tab 4 = Premium Tränke. Prinzip damit denke ich klar.
Jeder Tab kann dann theoretisch unendlich Items beinhalten. Ein Tab hat also eine Liste von Items.
Nun zum Shop Editor. Wie schon erwähnt, ich wähle den zu bearbeitenden Shop in der ComboBox aus und in meinem ViewModel habe ich schon eine Liste mit allen schon existierenden ShopDaten.
Prinzipiell ist das eine List<NPC>, die NPC-Klasse hat ein Shop -Member of Type Shop, darin ist eine List<ShopTab> und ShopTab hat eine List of Items.
Mein Datentemplate hatte ich jetzt für mein komplettes TabControl mir so vorgestellt:
XML-Quellcode
- <TabControl Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" ItemsSource="{Binding TabItems}">
- <TabControl.ContentTemplate>
- <DataTemplate>
- <ListView HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
- <ListView.ItemTemplate>
- <DataTemplate>
- <StackPanel Orientation="Horizontal">
- <Image Width="25" Height="25" />
- <TextBlock Text="{Binding ItemId}" VerticalAlignment="Center" />
- </StackPanel>
- </DataTemplate>
- </ListView.ItemTemplate>
- </ListView>
- </DataTemplate>
- </TabControl.ContentTemplate>
- </TabControl>
Ich habe gelesen, dass das ContentTemplate des TabControls für den Content auf der TabPage ist und das ItemTemplate ist für den Headerbereich jedes TabItems, da mir der Headerbereich egal ist und einfach den Namen des Shop Tabs bekommt benötige ich dort glaub ich keine Anpassung oder?
Jedenfalls war die Überlegung beim ContentTemplate halt ein ListView darin, und das ItemTemplate der ListView ein StackPanel Horizontal ausgerichtet welches dann ein Bildchen vom Item und den Item Namen (erstmal nur Item Id) enthält.
Problem ist jetzt wie ich das ganze zur Laufzeit befülle, da hab ich keine Ahnung wie das gehen soll und für Tipps oder Korrekturen in meinem XAML bin ich natürlich offen, vielleicht funktioniert es ja auch nicht so wie ich mir das vorstelle?
Danke im Voraus
Mfg