我有一个ListView
地方:
public class RowData
{
public string Box1 { get; set; }
public string Box2 { get; set; }
public string Box3 { get; set; }
};
private ObservableCollection<RowData> Data = new ObservableCollection<RowData>();
...
MyListView.ItemsSource = Data;
我将 的属性RowData
与DisplayMemberBinding
列的属性绑定,例如:
MyGridViewColumn.DisplayMemberBinding = new Binding("Box1"));
我处理ListViewItem.DoubleClick
事件:
private void ListViewItem_DoubleClick(object sender, MouseButtonEventArgs e)
{
ListViewItem item = sender as ListViewItem;
RowData data = item.DataContext as RowData;
data.Box1 = "new string";
}
但是,当我将新字符串分配给我的数据时,ListView 不会刷新其项目(Box1
即使Box1
有新值,我仍然可以看到 的旧值 - 新的双击显示Box1 == "new string"
在分配新字符串之前)。
为什么?我怎么解决这个问题?