在 XAML 中为视图模型构造函数添加复杂参数
Add Complex argument for viewmodel constructor in XAML
Flexlayout有可绑定的Item来源
<FlexLayout x:Name="playerscollection" Wrap="Wrap" BindableLayout.ItemsSource="{Binding Players}" />
视图模型中的项目定义为
public ObservableCollection<PlayerModel> Players { get; set; }
FlexLayout 数据模板是一个内容视图
我需要指定一个特定的视图模型“PlayerViewModel”作为内容视图 BindingContext
public PlayerViewModel(bool showPicker = true, PlayerModel player = null){}
所以在 FlexLayout 中,
<FlexLayout x:Name="playerscollection" Wrap="Wrap" BindableLayout.ItemsSource="{Binding Players}">
<views:PlayerView >
<views:PlayerView.BindingContext>
<viewModels:PlayerViewModel>
<x:Arguments>
<x:Boolean>False</x:Boolean>
<models:PlayerModel/>
</x:Arguments>
</viewModels:PlayerViewModel>
</views:PlayerView.BindingContext>
</views:PlayerView>
</FlexLayout>
但错误提示“类型 'PlayerViewModel' 不能用作对象元素,因为它不是 public 或未定义 public 无参数构造函数或类型转换器”。 =15=]
我创建了一个基本演示来测试代码并重现错误。该错误不影响项目构建,它只是 IDE 的 intellisense 错误。请忽略错误并部署代码,它将正常工作。
Flexlayout有可绑定的Item来源
<FlexLayout x:Name="playerscollection" Wrap="Wrap" BindableLayout.ItemsSource="{Binding Players}" />
视图模型中的项目定义为
public ObservableCollection<PlayerModel> Players { get; set; }
FlexLayout 数据模板是一个内容视图 我需要指定一个特定的视图模型“PlayerViewModel”作为内容视图 BindingContext
public PlayerViewModel(bool showPicker = true, PlayerModel player = null){}
所以在 FlexLayout 中,
<FlexLayout x:Name="playerscollection" Wrap="Wrap" BindableLayout.ItemsSource="{Binding Players}">
<views:PlayerView >
<views:PlayerView.BindingContext>
<viewModels:PlayerViewModel>
<x:Arguments>
<x:Boolean>False</x:Boolean>
<models:PlayerModel/>
</x:Arguments>
</viewModels:PlayerViewModel>
</views:PlayerView.BindingContext>
</views:PlayerView>
</FlexLayout>
但错误提示“类型 'PlayerViewModel' 不能用作对象元素,因为它不是 public 或未定义 public 无参数构造函数或类型转换器”。 =15=]
我创建了一个基本演示来测试代码并重现错误。该错误不影响项目构建,它只是 IDE 的 intellisense 错误。请忽略错误并部署代码,它将正常工作。