2016-06-06 16 views
1

Ich habe ein Dropdown-Menü für das Syncfusion-Treenavigator. Unser Kunde möchte in den ersten beiden Drilldown-Menüs des Treenavigators ein Icon pro Gegenstand hinzufügen. Da die Liste der Elemente von einem deserialisierten JSON-Objekt stammt, wie kann ich die Bilder zuordnen und injizieren, ohne sie in die JSON-Datei einzufügen? Mein Kollege schlug vor, eine Artikelvorlage im Code hinterher zu erstellen, aber ich bin nicht sicher, wie es geht.Fügen Sie ein Bild/Symbol neben den Artikeln von treenavigator hinzu

P.S. Bitte nicht in die Warteschleife legen. Es ist schwierig, eine Frage zu formulieren, wenn Sie nicht vollständig verstehen, was Sie fragen müssen. Ich werde versuchen, alle Klarstellungen zu beantworten.

Danke!

Antwort

1

Legen Sie die Bildpfade in ViewModel nur für die Elemente fest, für die Bilder angezeigt werden sollen. Sie können mit dem folgenden Code versuchen:

xmlns:navigation="using:Syncfusion.UI.Xaml.Controls.Navigation" 
xmlns:primitives="using:Syncfusion.UI.Xaml.Primitives" 

    <navigation:SfTreeNavigator ItemsSource={Binding NavigatorItems}> 
     <navigation:SfTreeNavigator.ItemTemplate> 
      <primitives:HierarchicalDataTemplate ItemsSource="{Binding Models}" x:Key="Template"> 
       <DataTemplate> 
        <StackPanel Orientation="Horizontal"> 
         <Image Source="{Binding ImageSource}" Width="18" Height="18"/> 
         <TextBlock Text="{Binding Header}" VerticalAlignment="Center" Margin="18 0 0 0"/>     
        </StackPanel> 
       </DataTemplate> 
       <primitives:HierarchicalDataTemplate.ItemTemplate> 
        <primitives:HierarchicalDataTemplate ItemsSource="{Binding Models}"> 
         <DataTemplate> 
          <StackPanel Orientation="Vertical"> 
           <Image Source="{Binding ImageSource}" Width="18" Height="18"/> 
           <TextBlock Text="{Binding Header}" VerticalAlignment="Center" Margin="18 0 0 0"/> 
          </StackPanel> 
         </DataTemplate> 
         <primitives:HierarchicalDataTemplate.ItemTemplate> 
          <DataTemplate> 
           <StackPanel Orientation="Vertical"> 
            <Image Source="{Binding ImageSource}" Width="18" Height="18"/> 
            <TextBlock Text="{Binding Header}" VerticalAlignment="Center" Margin="18 0 0 0"/> 
           </StackPanel> 
          </DataTemplate> 
         </primitives:HierarchicalDataTemplate.ItemTemplate> 
        </primitives:HierarchicalDataTemplate> 
       </primitives:HierarchicalDataTemplate.ItemTemplate> 
      </primitives:HierarchicalDataTemplate> 
     </navigation:SfTreeNavigator.ItemTemplate> 

Hinweis: Syncfusion.SfTreeNavigator.UWP und Syncfusion.SfSharedd.UWP Baugruppen erforderlich sind.

Grüße,

Jessie

+1

Genau das, was ich brauchte. Thaaanks Jessie :) – astropringles