gpt4 book ai didi

c# - WPF 绑定(bind)命令到 ContextMenu

转载 作者:太空宇宙 更新时间:2023-11-03 20:03:56 24 4
gpt4 key购买 nike

我在 WPF 中遇到命令绑定(bind)问题。我有以下 xaml:

<ItemsControl ItemsSource="{Binding Entity}" Name="Lst">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel>
<Button Content="qwerty" Command="{Binding ElementName=Lst, Path=DataContext.SaveCommand}" >
<Button.ContextMenu>
<ContextMenu>
<MenuItem Header="Send2" Command="{Binding ElementName=Lst, Path=DataContext.SaveCommand}" />
</ContextMenu>
</Button.ContextMenu>
</Button>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>

如您所见,Button 及其 ContextMenu 具有相似的命令绑定(bind)。但是当我单击按钮时,它的命令正在触发,而当我单击上下文菜单的项目时,它的命令没有触发。我哪里错了?提前致谢!

最佳答案

我之前遇到过类似的问题,通过将 datacontext 通过容器的 tag 属性传递来解决,如下所示。我让它在网格 ContextMenu 上工作,但看不出有任何理由不能在按钮上工作。如果你有任何问题,请告诉我

<Button  Content="qwerty" Tag="{Binding DataContext,ElementName=Lst}" Command="{Binding ElementName=Lst, Path=DataContext.SaveCommand}"  >
<Button.ContextMenu>
<ContextMenu DataContext="{Binding PlacementTarget.Tag, RelativeSource={RelativeSource Self}}">
<MenuItem Header="Send2" Command="{Binding SaveCommand}" />
</ContextMenu>
</Button.ContextMenu>
</Button>

关于c# - WPF 绑定(bind)命令到 ContextMenu,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25205640/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com