2017-10-24 5 views
0

Ich versuche, eine NavigationViewMenu zu machen und ich brauche ein Menü legte alsWie mischt man dynamische und statische Elemente in UWP XAML NavigationView MenuItems?

  • statische Kopf

  • dynamische Elemente aus DB als Elemente

    • statische Startseite Artikel folgt

    • statische Kopfzeile

    • statisch Satz von Artikel

    Das ist, was ich versucht: `

     <NavigationViewItemSeparator /> 
         <NavigationViewItemHeader Content="My Stuff"> 
          <NavigationViewItemHeader.Foreground> 
           <SolidColorBrush Color="{ThemeResource SystemBaseHighColor}"></SolidColorBrush> 
          </NavigationViewItemHeader.Foreground> 
         </NavigationViewItemHeader> 
    
         <NavigationViewList ItemsSource="{x:Bind MyStuff}"> 
          <NavigationViewList.ItemTemplate> 
           <DataTemplate x:DataType="local:MyModel"> 
            <NavigationViewItem Icon="Pictures" Content="{x:Bind Name }" Tag="{x:Bind Tag }" /> 
           </DataTemplate> 
          </NavigationViewList.ItemTemplate> 
         </NavigationViewList> 
    
         <!--<NavigationViewItem Icon="Pictures" Content="Woop" Tag="foos"/> 
         <NavigationViewItem Icon="Pictures" Content="Doop" Tag="foos"/> 
         <NavigationViewItem Icon="Pictures" Content="Loop" Tag="foos"/>--> 
    
         <NavigationViewItemHeader Content="Other Stuff"> 
          <NavigationViewItemHeader.Foreground> 
           <SolidColorBrush Color="{ThemeResource SystemBaseHighColor}"></SolidColorBrush> 
          </NavigationViewItemHeader.Foreground> 
         </NavigationViewItemHeader> 
         <NavigationViewItem Icon="Pictures" Content="Foos" Tag="foos"/> 
         <NavigationViewItem Icon="ContactInfo" Content="Bars" Tag="bars"/> 
         <NavigationViewItem Icon="SwitchApps" Content="Bazes" Tag="bazes"/> 
         <NavigationViewItem Icon="SelectAll" Content="Kazes" Tag="kaz"/> 
         <NavigationViewItem Icon="Shuffle" Content="Dases" Tag="das"/> 
    
        </NavigationView.MenuItems> 
    

    ` Das ist, was ich habe:

    enter image description here

    Dies ist, was ich gesucht:

    Gibt es etwas so gutes und praktisches wie Angulars *ngFor in XAML für UWP?

  • +0

    Funktioniert nur ein einzelnes Element in MyStuff arbeiten? Wird eine Höhe in der NavigationListView hart codiert, um sie korrekt anzuzeigen? –

    Antwort

    1

    Ich kann es reproduzieren. Es sieht so aus, als ob NavigationViewList nur den Platz eines Elements einnimmt, wenn er sich in NavigationView.MenuItem befindet. Das ist das Gleiche wie das Hinzufügen eines ListView in einem ListViewItem. Um dieses Verhalten zu ändern, müssen wir das Verhalten des Gegenstandes selbst ändern. Nach einigen Nachforschungen scheint es jedoch, dass die Anpassung der NavigationViewList Blackbox für uns ist. Der einzige Weg, über den ich nachdenken könnte, ist, mit Hilfe von Splitview und Acryl unsere eigene NavigationView zu erstellen.

    +0

    Ich gehe wahrscheinlich mit diesem, sieht aus wie ein Acryl-Container mit Listenansichten und Schaltflächen wird es trotz der Mühe zu lösen, verliert die NavigationView cool Retraktion und implementiert Reaktionsfähigkeit – Felype