【发布时间】:2015-09-02 09:18:06
【问题描述】:
我正在尝试将我的 ListView 项绑定到来自我的父 ViewModel 的命令。问题是我想在当前项目中添加 CommandParameter
基本上,在 WPF 中我会做类似的事情
<MyItem Command="{Binding ElementName=parent", Path=DataContext.MyCommand}" CommandParameter="{Binding}"/>
在 Xamarin Forms ElementName 中不起作用,所以方法是使用 BindingContext,但我应该如何使用它(如果我的一个绑定点指向父级,第二个指向自身)?
我试过了
<MyItem Command="{Binding BindingContext.RemoveCommand, Source={x:Reference parent}}" CommandParameter="{Binding }" />
但它不起作用(似乎它没有改变源)。
我知道,普通绑定的一种方法是使用BindingContext="{x:Reference parent}",但在这个例子中它不起作用,因为我需要Self 绑定CommandParameter
我该怎么做?
【问题讨论】:
-
另外,MyItem 是 DataTemplate 的子项
-
我不清楚你想做什么。你能给你的问题一些背景吗?您想在 UI 中实现什么目标?
-
不确定我是否可以关注...您不会在绑定上下文中简单地拥有一个
Parent属性并调用RemoveCommand吗?喜欢:Command="{Binding Parent.RemoveCommand}"?您不想在 UI 元素上调用命令(这就是x:Reference的用途)。命令的 sender 将是当前元素,所以这里不需要使用参数。
标签: c# wpf xamarin.ios xamarin.forms