Hel*_*yes 2 xaml xamarin.forms
有没有一种方法可以根据一个条件选择要初始化的布局?我有一个用于足球统计数据的表格,但是如果myViewModel.Sport == Sports.Basketball
我想加载一个完全不同的布局。
我在每个View中都使用Datatrigger尝试了类似的方法,但对我来说似乎一团糟:
<Label Text="{Binding Goals}"
Grid.Row="1" Grid.Column="0">
<Label.Triggers>
<DataTrigger TargetType="Label"
Binding="{Binding Sport}"
Value="1">
<Setter Property="Text"
Value="{Binding Points}"/>
</DataTrigger>
</Label.Triggers>
</Label>
Run Code Online (Sandbox Code Playgroud)
我显示“目标”,但如果“运动”枚举值为1(“ Sports.Basketball”),我将更改为““点””。我想用很多标签甚至图像来做,所以我需要一种正确的方法。
有人可以帮我吗?我需要根据ViewModel的Sport属性加载不同的Grid。
您可以做的另一件事是将每个单独的运动项放入自己的视图中,将所有视图添加到页面中,并根据要显示的运动项设置其IsVisible属性。
伪代码中的示例如下所示:
<Page>
<Grid>
<BasketballView IsVisible="{Binding IsBasketball}">
<SoccerView IsVisible="{Binding IsSoccer}">
<FootballView IsVisible="{Binding IsFootball}">
</Grid>
</Page>
Run Code Online (Sandbox Code Playgroud)
然后从ViewModel设置适当的布尔值。
归档时间: |
|
查看次数: |
2742 次 |
最近记录: |