我會在ViewModels中管理我的菜單,而不是在XAML中。我的ViewModel將負責返回一個集合了標準菜單集合和自定義UserCollection的集合。
通常我用null
值分隔項目,如果項目爲null,則使用DataTrigger將模板繪製爲分隔符。
事情是這樣的:
myMenu.AddRange(UserMenu);
myMenu.Add(null);
myMenu.AddRange(StandardMenu);
和XAML ...
<ContextMenu ItemsSource="{Binding MyMenu}">
<ContextMenu.Resources>
<Style TargetType="{x:Type MenuItem}">
<Setter Property="Template"
Value="{StaticResource MyMenuItemTemplate}" />
<Style.Triggers>
<DataTrigger Binding="{Binding }" Value="{x:Null}">
<Setter Property="Template"
Value="{StaticResource MySeparatorTemplate}" />
</DataTrigger>
</Style.Resources>
</Style>
</ContextMenu.Resources>
</ContextMenu>
如何兩個菜單,每個綁定到單獨的列表,並在這兩個列表之間的自定義HTML分離器? – mellamokb
你是指兩個菜單,然後是包含標準列表和頻繁列表的子菜單?技術上可行但用戶可能不喜歡這樣。此應用程序旨在提高聯絡中心的性能。我必須將點擊次數和/或導航次數降至最低。 – Nishant