0

DataTemplateSelector在 FlowListView 中添加(基本相同ListView)。

<ContentView
    ...
    BindingContext="{Binding PatientImageListVM, Source={StaticResource VMLocator}}">
    ...
    <flv:FlowListView
        ...
        HasUnevenRows="true">
        <flv:FlowListView.FlowColumnTemplate>
            <local:PatientImageListDataTemplateSelector/>
        </flv:FlowListView.FlowColumnTemplate>
    </flv:FlowListView>
</ContentView>

我使用此代码获取绑定的单元格。

button.SetBinding(Button.CommandParameterProperty, ".");

但我想在与 in 绑定时使用一些ViewModel变量。我尝试了这段代码,但没有工作。ContentViewDataTemplateSelector

label.SetBinding(Label.IsVisibleProperty, 
    "{Binding BindingContext.LabelVisibility, Source={x:Reference Page}}");

我怎样才能得到一个可变的ViewModelin DataTemplateSellector

4

1 回答 1

0
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));
}
于 2017-03-06T08:34:55.517 回答