Forms在ListView的ViewCell中获取ViewModel作为BindingContext

Forms在ListView的ViewCell中获取ViewModel作为BindingContext,listview,xamarin.forms,binding-context,Listview,Xamarin.forms,Binding Context,我在FlowListView中添加了DataTemplateSelector(与ListView基本相同) ... 我使用这个代码来获取绑定的单元格 button.SetBinding(button.CommandParameterProperty,“.”); 但是我想在ViewModel中使用一些变量,这些变量与DataTemplateSelector中的ContentView绑定。我试过这个代码,但不起作用 label.SetBinding(label.IsVisiblePropert

我在FlowListView中添加了
DataTemplateSelector
(与
ListView
基本相同)


...
我使用这个代码来获取绑定的单元格

button.SetBinding(button.CommandParameterProperty,“.”);
但是我想在
ViewModel
中使用一些变量,这些变量与
DataTemplateSelector
中的
ContentView
绑定。我试过这个代码,但不起作用

label.SetBinding(label.IsVisibleProperty,
“{Binding BindingContext.LabelVisibility,Source={x:Reference Page}}”);
如何在
DataTemplateSellector
中的
ViewModel
中获取可变的

label.SetBinding(Label.IsVisibleProperty, new Binding("BindingContext.LabelVisibility", source: this));
这应该行得通。你应该用“this”将“Page”传递给你的绑定。因此,您应该在创建ItemTemplate时设置绑定

lv.ItemTemplate = new DataTemplate(() =>
{
    //....
    label.SetBinding(Label.IsVisibleProperty, new Binding("BindingContext.LabelVisibility", source: this));
}

谢谢你的来信。我找到了解决方案
“{Binding ImageListVM.LabelVisibility,Source={StaticResource VMLocator}}”
。当我用你的代码替换时,它也能工作。