我不知道是否是巧合,但在使用更新5更新Visual Studio 2013后,我的列表视图不再更新。因为我不是任何mvvm wpf专家,请求帮助。
每次USB插入或拔出时的应用程序更新列表 - 这都是在backgroundworker和eventhandler的帮助下发生的。
我的ViewModel
public ObservableCollection<Devices> devicelist { get; protected set; }
void DeviceInsertedEvent(object sender, EventArrivedEventArgs e)
{
fd.FindDevices();
RefreshList();
}
void DeviceRemovedEvent(object sender, EventArrivedEventArgs e)
{
fd.FindDevices();
RefreshList();
}
public void RefreshList()
{
devicelist = new ObservableCollection<Devices>();
devicelist.Clear();
foreach (var item in fd.devices)
{
devicelist.Add(item);
}
}
因此,如果设备插入或拔出,方法FindDevices启动(此循环只询问每个设备的信息),最后我获得包含所有信息的设备列表。我喜欢刷新列表。 “fd.devices”只有WPF没有刷新的设备数量正确。 如果有任何问题,请询问。请帮我解决我的问题:)
答案 0 :(得分:0)
您需要提升属性已更改事件。这会涟漪到UI元素,基本上它会刷新它拥有的数据。
假设列表是从UI绑定的?
如果您还没有基础视图模型类,可能值得一看: