c# - 如何在 Gridviewcolumn.celltemplate 中创建包含菜单项的上下文菜单?无法使示例代码工作
问题描述
我在 WPF 应用程序的数据网格视图的不同列中有两个按钮。该数据网格视图将从数据库加载。同时,每行都会有一个 Location 下拉菜单项。我有五列,图像显示了我的 wpf 应用程序最后两列中的内容。
正如我们在图像中看到的,下拉箭头出现在Location中。但是当我按下它时,我看不到子菜单项,如下面的 xaml 代码所示。
<local:CustomListView.View>
<GridView AllowsColumnReorder="False">
<GridViewColumn Header="Car" Width="Auto"
DisplayMemberBinding="{Binding Car}" />
<GridViewColumn Header="House" Width="Auto"
DisplayMemberBinding="{Binding House}" />
<GridViewColumn Header="" Width="60">
<GridViewColumn.CellTemplate>
<DataTemplate>
<MenuItem Header="Location" ToolTip="Click to see info">
<MenuItem Header="Start" Click="info_Click"
ToolTip="Shows the start route"/>
<MenuItem Header="Final" Click="info_Click"
ToolTip="Show the final route"/>
</MenuItem>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</local:CustomListView.View>
出于某种原因,我看不到子项Start和Final。我对此很陌生,将不胜感激。
谢谢大家。
我无法理解如何添加
<local:CustomListView.ContextMenu>
<ContextMenu>
//I want to be able to place the MenuItem in here
</ContextMenu>
</local:CustomListView.ContextMenu>
我想在该GridViewColumn.CellTemplate
部分添加类似的内容。
有人可以指导我如何做到这一点。我花了几个小时但没有成功。
解决方案
To resolve the issue, nest it in a Menu tag.
<Menu>
<MenuItem Header="Location" ToolTip="Click to see info">
<MenuItem Header="Start" Click="info_Click"
ToolTip="Shows the start route"/>
<MenuItem Header="Final" Click="info_Click"
ToolTip="Show the final route"/>
</MenuItem>
<Menu>