C# UWP社区工具,SlideableListView删除列表项
我正在使用UWP社区工具包的C# UWP社区工具,SlideableListView删除列表项,c#,xaml,uwp,uwp-xaml,windows-community-toolkit,C#,Xaml,Uwp,Uwp Xaml,Windows Community Toolkit,我正在使用UWP社区工具包的slideableListItem控件。我在列表视图中有一些静态列表内容。现在在UWP Community Toolkit示例应用程序中,我只找到了控件的XAML,而没有找到可以在控件中找到remove按钮的事件处理程序的代码文件。我想在代码文件中为RightCommandRequested=“SlideableListItem\u RightCommandActivated”编写一个事件,以便在列表视图中删除这些静态项 在列表视图中删除列表项的常规代码在此不起作用。
slideableListItem
控件。我在列表视图中有一些静态列表内容。现在在UWP Community Toolkit示例应用程序中,我只找到了控件的XAML,而没有找到可以在控件中找到remove按钮的事件处理程序的代码文件。我想在代码文件中为RightCommandRequested=“SlideableListItem\u RightCommandActivated”
编写一个事件,以便在列表视图中删除这些静态项
在列表视图中删除列表项的常规代码在此不起作用。请问是否有人知道事件处理程序的代码
现在在UWP Community Toolkit示例应用程序中,我只找到了控件的XAML,而没有找到可以在控件中找到remove按钮的事件处理程序的代码文件
就在这里:
在官方示例中,它对ListView
的项目源使用ObservableCollection
,而不是静态列表,使用它的优点是这是一个动态数据收集,在添加、删除项目或刷新整个列表时提供通知。因此,在本示例中,它仅为slideblelistitem
的RightCommand
绑定一个名为DeleteItem
的delegateCommand,如下所示:
RightCommand="{Binding DeleteItem, ElementName=Page, Mode=OneWay}"
private void SlidableListItem_RightCommandRequested(object sender, System.EventArgs e)
{
var slidableitem = sender as SlidableListItem;
var item = slidableitem.DataContext as Item;
}
在代码隐藏中:
private DelegateCommand<Item> _deleteItem = default(DelegateCommand<Item>);
public DelegateCommand<Item> DeleteItem => _deleteItem ?? (_deleteItem = new DelegateCommand<Item>(ExecuteDeleteItemCommand, CanExecuteDeleteItemCommand));
...
private bool CanExecuteDeleteItemCommand(Item item)
{
return true;
}
private void ExecuteDeleteItemCommand(Item item)
{
_items.Remove(item);
}
如果你想要一个演示,你可以留下评论
现在在UWP Community Toolkit示例应用程序中,我只找到了控件的XAML,而没有找到可以在控件中找到remove按钮的事件处理程序的代码文件
就在这里:
在官方示例中,它对ListView
的项目源使用ObservableCollection
,而不是静态列表,使用它的优点是这是一个动态数据收集,在添加、删除项目或刷新整个列表时提供通知。因此,在本示例中,它仅为slideblelistitem
的RightCommand
绑定一个名为DeleteItem
的delegateCommand,如下所示:
RightCommand="{Binding DeleteItem, ElementName=Page, Mode=OneWay}"
private void SlidableListItem_RightCommandRequested(object sender, System.EventArgs e)
{
var slidableitem = sender as SlidableListItem;
var item = slidableitem.DataContext as Item;
}
在代码隐藏中:
private DelegateCommand<Item> _deleteItem = default(DelegateCommand<Item>);
public DelegateCommand<Item> DeleteItem => _deleteItem ?? (_deleteItem = new DelegateCommand<Item>(ExecuteDeleteItemCommand, CanExecuteDeleteItemCommand));
...
private bool CanExecuteDeleteItemCommand(Item item)
{
return true;
}
private void ExecuteDeleteItemCommand(Item item)
{
_items.Remove(item);
}
如果你想要一个演示,你可以留下评论。对不起,我只是拼错了。我说的是SlideableListItem
。谢谢你,我只是拼错了。我说的是SlideableListItem
。感谢您提供的详细信息,实际上我已将我的集合从List
更改为observedcollection
,我认为我不应该使用slideablelistItem\u RightCommandRequested
而应该使用刚才显示的DelegateCommand。但是在您的示例中,DelegateCommand
和Item
是什么?我的代码中没有它。感谢您提供的详细信息,实际上我已将我的集合从List
更改为observedcollection
,我认为我不应该使用slideablelistitem\u RightCommandRequested
,而应该使用刚才显示的DelegateCommand。但是在您的示例中,DelegateCommand
和Item
是什么?我的代码里没有。