我有一个列表视图,用于显示表单。 这是我的项目来源:
ObservableCollection<ContactBlockFieldViewModel> ContactBlockFIelds
每个ContactBlockFieldViewModel都包含public EContactFieldTypeDTO ContactField { get; set; }
我想将listview条目行为属性绑定到特定行为,具体取决于它是什么类型的联系人字段。
例如,对于电子邮件类型,我希望我的自定义EmailValidationBehavior。
我怎样才能做到这一点?我尝试将行为放在viewmodel中,然后
<ListView ItemsSource="{Binding ContactBlockFields}" x:Name="ContactFieldsList">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout>
<Label Text="{Binding FormDisplayName}" HorizontalTextAlignment="Start"></Label>
<Entry Text="{Binding Value}" BackgroundColor="{Binding BackgroundColor}">
<Entry.Behaviors>
<Binding Path="BehaviorInViewModel"></Binding>
</Entry.Behaviors>
</Entry>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
但它没有用,我也尝试使用转换器将枚举转换为行为但也没有成功。我检查了调试并调用了行为的构造函数,但是对象没有被绑定。