我正在创建一个跨平台的Xamarin.Forms应用。在页面中,我有以下列表视图。
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid x:Name="activityGrid">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Label Text="{Binding Name}" />
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
在这里,您可以看到列表视图中的每个项目都有一行和两列。我定义的第一个标签将设置在Row=0
和Column=0
中,因为这是默认设置。现在关于Row=0
和Column =1
,我希望它是基于某些标准的Switch或Entry。这是我背后的代码。
foreach (var activity in activities)
{
if (activity.Measurement == 0)
{
Switch yesNo = new Switch();
}
else
{
Entry measure = new Entry();
}
}
现在帮我根据需要将子项添加到网格布局中。
答案 0 :(得分:1)
要以编程方式将控件添加到网格,请执行以下操作:
activityGrid.Children.Add(control, col, row);