Ich mag würde ein MRU-Menü erstellen, die die folgende Struktur aufweist:WPF MenuItem: Mix Databound-Elemente und statische Inhalte
File
+=>Recent Files
+=> Doc1.txt
+=> Doc2.txt
-separator-
+=> Clear entries
Da dies MVVM, meine MRU-Liste wird auf die Ansicht Modell datengebundene. Da ich das Trennzeichen hinzufügen möchte und ich das Trennzeichen und die Aktion zum Löschen von Einträgen nicht in die Liste der Elemente einfügen möchte, verwende ich momentan einen itemscontrol-Container für mein Menü, aber ich habe schreckliche Padding-Probleme. Haben Sie eine Lösung, die es mir erlaubt, einfach MenuItem
Instanzen hinzuzufügen?
Hier ist der XAML:
<!-- MRU list -->
<MenuItem Header="_Recent Files" >
<ItemsControl ItemsSource="{Binding MostRecentlyUsed.Entries,Mode=OneWay}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<MenuItem Header="{Binding ShortName}" ToolTip="{Binding FileName}" Command="{Binding OpenCommand}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<Separator />
<MenuItem Header="_Clean Entries" Command="{Binding MostRecentlyUsed.CleanCommand}" />
</MenuItem>
<Separator />
Cheers, Florian