发送ContentPresented的内容作为附加命令参数

时间:2014-01-04 22:05:03

标签: c# wpf mvvm command

MVVM demo app by Josh Smith中,当您尝试通过 标签上的关闭按钮关闭标签时(当前所选标签),则它不会关闭,而是关闭选定的选项卡。

如何修改代码,以便当我点击非当前所选标签项的关闭按钮时,它会关闭右边的标签?

注意,我已尝试使用AttachedProperties及以下内容:

AttachedCommand:CommandBehavior.Event="Click"
AttachedCommand:CommandBehavior.Command="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}, Path=DataContext.CloseWorkspaceCommand}"
AttachedCommand:CommandBehavior.CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}, Path=DataContext}"

我传入CommandParameter,但这会获取托管视图的ViewModel,而不是绑定到ContentPresenter的视图模型。

感谢您的时间。

1 个答案:

答案 0 :(得分:1)

尝试使用它,它将直接绑定到视图的datacontext

AttachedCommand:CommandBehavior.CommandParameter="{Binding}"

我希望这会有所帮助。