use*_*899 6 c# wpf listbox contextmenu listboxitem
我想在WPF中为我的Listbox提供一个上下文菜单.我使用整个列表框的上下文菜单来完成它,但即使您没有单击某个项目,也可以通过richt-click来获取上下文菜单.
我在谷歌找到了一些东西,但这没有用.
我试过这样的事情:
<ListBox Margin="5" ItemsSource="{Binding}">
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}">
<TextBlock.ContextMenu>
<ContextMenu>
<MenuItem Header="{Binding Name}" Click="MenuItemName_Click"/>
<MenuItem Header="{Binding Capital}" Click="MenuItemCapital_Click"/>
<MenuItem Header="{Binding Population}" Click="MenuItemPopulation_Click"/>
</ContextMenu>
</TextBlock.ContextMenu>
</TextBlock>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Run Code Online (Sandbox Code Playgroud)
我尝试使用像示例中的文本块,与其他教程中的其他元素一样,我厌倦了没有和许多其他东西 - 但没有任何效果.我的列表框项目没有上下文菜单:(
后来我尝试过这样的事:
<ListBox.ItemTemplate>
<DataTemplate>
<ListBoxItem>
<ListBoxItem.ContextMenu>
<ContextMenu>
<MenuItem/>
</ContextMenu>
</ListBoxItem.ContextMenu>
</ListBoxItem>
</DataTemplate>
</ListBox.ItemTemplate>
Run Code Online (Sandbox Code Playgroud)
但它也没有用.
有人可以给我一个提示/工作示例:)?
谢谢
Tho*_*que 13
我将设置ContextMenu在ListBoxItem"的风格,而不是在DataTemplate:
<ListBox Name="simpleListBox"
ItemsSource="{Binding SimpleList}"
DisplayMemberPath="Name">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="ContextMenu">
<Setter.Value>
<ContextMenu>
...
</ContextMenu>
</Setter.Value>
</Setter>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13771 次 |
| 最近记录: |