我想在WPF DataGrid中創建一個動態的上下文菜單。以下是我需要幫助的問題:C#WPF上下文菜單數據綁定
1)當子菜單正常工作時,根菜單項標題不與ViewModel綁定。
2)子菜單總是彈出在左側而不是右側。我怎樣才能解決這個風格?
<DataGrid.ContextMenu>
<ContextMenu ItemsSource="{Binding PackageCM.Members}" HasDropShadow="True" Placement="Right">
<ContextMenu.ItemContainerStyle>
<Style TargetType="MenuItem">
<Setter Property="Header" Value="{Binding CategoryName}" />
</Style>
</ContextMenu.ItemContainerStyle>
<ContextMenu.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Items}">
<MenuItem Header="{Binding DisplayName}" Command="{Binding AllPackagesVM.OpenCOBAPackageCommand, Source={StaticResource Locator}}"></MenuItem>
</HierarchicalDataTemplate>
</ContextMenu.ItemTemplate>
</ContextMenu>
Root Menu Item Header are not being bind.
基本上,上下文菜單被結合PackageCM.Members與具有類別對象的列表,我想顯示在上下文菜單根類別名稱。接下來,每個類別都包含一個項目列表,這些項目將顯示爲子菜單。
在此先感謝您的幫助。
非常感謝你,Redouane。它運行良好,現在我可以看到ContextMenu正確顯示。此外,現在我明白了ContextMenu是如何與子菜單一起工作的。 –