我尝试过循环列表视图并将属性设置为 false,但它不起作用。
您的复选框绑定到
IsFavorite
属性。因此,如果您想取消选中它,只需更新 IsFavorite
属性的值即可。要在属性值更改时更新 UI,您的 SelectedDataModel
类需要实现 INotifyPropertyChanged Interface。
public class SelectedDataModel : INotifyPropertyChanged
{
private int _Id;
public int Id
{
get { return _Id; }
set
{
if (_Id != value)
{
_Id = value;
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("Id"));
}
}
}
private string _Message;
public string Message
{
get { return _Message; }
set
{
if (_Message != value)
{
_Message = value;
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("Message"));
}
}
}
private bool _IsFavorite;
public bool IsFavorite
{
get { return _IsFavorite; }
set
{
if (_IsFavorite != value)
{
_IsFavorite = value;
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("IsFavorite"));
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
}
然后,在按钮单击事件处理程序中,您只需将
listData
中每个项目的 IsFavorite 更改为 false。
foreach (var item in listData)
{
item.IsFavorite = false;
}