【发布时间】:2019-03-28 18:51:31
【问题描述】:
我正在使用 Xamarin.Forms。我想在单击“删除”按钮后删除列表视图中的选定项。
我的 xml
<ListView x:Name="ProductsListView"
HasUnevenRows="True"
BackgroundColor="#ecf0f1"
SeparatorVisibility="None"
HorizontalOptions="FillAndExpand"
VerticalOptions="FillAndExpand">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout Margin="6,4,6,4"
BackgroundColor="White">
<StackLayout Orientation="Horizontal">
<Label Text="Item ID" Margin="25,10,4,4" FontSize="Small" TextColor="Black" />
<Label Text="{Binding retail_modified_item_id}" Margin="25,10,4,4" TextColor="Black" FontSize="12" />
</StackLayout>
<StackLayout Orientation="Horizontal">
<Label Text="Name" Margin="25,2,8,4" TextColor="Black" FontSize="Small" />
<Label Text="{Binding name}" Margin="32,1,8,4" TextColor="Black" FontSize="Small" />
<Switch IsToggled="false" Margin="210,2,2,2" Toggled="Switch_Toggled" />
</StackLayout>
<StackLayout Orientation="Horizontal">
<Label Text="OldPrice" Margin="25,2,8,4" TextColor="Black" FontSize="Small"/>
<Label Text="{Binding old_price}" Margin="32,1,8,4" TextColor="Black" FontSize="Small" />
</StackLayout>
<StackLayout Orientation="Horizontal">
<Label Text="NewPrice" Margin="25,2,8,4" TextColor="Black" FontSize="Small" />
<Label Text="{Binding new_price}" Margin="32,1,8,4" TextColor="Black" FontSize="Small" />
</StackLayout>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
我的cs代码
private void reject(object sender, EventArgs args)
{
foreach (var v in ProductsListView.SelectedItems)
{
ProductsListView.ItemSelected.Remove(v);
}
DisplayAlert("Rejected","Request Rejected!!", "OK");
}
我收到此错误:
listview 不包含选定项 ItemSelected 的定义
【问题讨论】:
-
如果您的问题已经完成,下面的答案,您可以标记为已完成我的答案。
-
你能解释一下你到底想在这里做什么吗?
-
@G.hakim 我想在单击拒绝按钮后删除选定的数据。我在拒绝函数中附加了删除代码。但它抛出错误“列表视图不包含 selecteditem 的定义,ItemSelected”
-
你能指出发生这种情况的代码行吗
-
foreach (在 ProductsListView.SelectedItems 中的变量 v) ProductsListView.ItemSelected.Remove(v); // selectedItem 和 itemSelected
标签: c# listview xamarin.forms