我有一个ListView,需要将其用作放置目标。我添加了以下触发器
<i:Interaction.Triggers>
<i:EventTrigger EventName="Drop">
<i:InvokeCommandAction Command="{Binding ItemsDroppedCommand}"
CommandParameter="{Binding ???}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
问题是尽管我不知道如何获取掉落的物品。 CommandParameter绑定(bind)中应该包含什么内容?
如果我在后面的代码中执行了放置处理程序,则会得到一个DragEventArgs参数,该参数使我能够删除文件。有办法吗?
如果这是错误的方法,请随时提出替代方案
最佳答案
开箱即用不支持通过绑定(bind)将事件的参数传递给Command,但可以通过a workaround实现。
但是,我建议您使用EventToCommand中可用的MVVM Light行为,它可以完全启用这种情况:
<i:Interaction.Triggers>
<i:EventTrigger EventName="Drop">
<cmd:EventToCommand Command="{Binding ItemsDroppedCommand}"
PassEventArgsToCommand="True" />
</i:EventTrigger>
</i:Interaction.Triggers>