我试图将用户选择的选择器值发送到列表.该列表应继续添加用户选择的内容,而不是删除之前的内容.关于如何做到这一点的任何提示?
private void MainPicker_SelectedIndexChanged(object sender, EventArgs e)
{
var product = MainPicker.Items[MainPicker.SelectedIndex];
DisplayAlert(product, "Layer added to calculation list", "OK");
}
private void ListView_ItemSelected(object sender,SelectedItemChangedEventArgs e)
{
if (e.SelectedItem == null)
// if selected add to list?
}
Run Code Online (Sandbox Code Playgroud)
我相信您的问题是将选定项目从选择器添加到列表视图中,该视图会根据选择器选择继续添加.
您可以将以下代码作为类中的公共对象.
ObservableCollection<LayersClass> listProducts = new ObservableCollection<LayersClass>();
Run Code Online (Sandbox Code Playgroud)
然后获取所选的选择器项.假设输出和集合对象属于同一类型.
var product = MainPicker.Items[MainPicker.SelectedIndex];
if(null != product)
{
LayersClass layer = new LayersClass();
layer.Product = product;
listProducts.Add(layer);
}
Run Code Online (Sandbox Code Playgroud)
列表视图的XAML更改 - 您需要在DataTemplate下面添加ViewCell标记,其中包含listview项目子项
<ListView
x:Name="productsListView"
HasUnevenRows="False"
HorizontalOptions="FillAndExpand"
VerticalOptions="FillAndExpand"
BackgroundColor="White" >
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout>
<Label Text="{Binding Product}"></Label>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
Run Code Online (Sandbox Code Playgroud)
我在DataTemplate标记内添加了ViewCell.
| 归档时间: |
|
| 查看次数: |
95 次 |
| 最近记录: |