我正在尝试重新排序ListView
通过拖放,它在使用静态项目时与我一起工作,但是当我使用绑定数据时物品来源拖动工作正常,但我无法删除该项目,这是我的代码
C#:
lstSrvMenu.ItemsSource = Menue.MainItems.Where(m => int.Parse(m.GroupID) > 0);
XAML:
<ListView Name="lstSrvMenu" Margin="0,40,0,0" AllowDrop="True" CanDragItems="True" CanReorderItems="True" IsSwipeEnabled="true">
<ListView.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding GroupTDesc}" TextWrapping="WrapWholeWords" VerticalAlignment="Center" HorizontalAlignment="Left"/>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
当我使用 itemsSorce 绑定数据时,拖动工作正常,但我无法删除该项目,这是我的代码。
问题是类型ListView
ItemSourse
不是ObservableCollection https://learn.microsoft.com/en-us/dotnet/api/system.collections.objectmodel.observablecollection-1?view=netframework-4.7。当完全拖动item时,数据源的排序不会改变,界面也不会相应改变。根据您的要求,您可以使用ObservableCollection
代替List<>
.
Example
var list = new ObservableCollection<string>();
for (var i = 0; i < 10; i++)
{
list.Add(i.ToString() + "Template");
}
lstSrvMenu.ItemsSource = list;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)