私は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";
}
Box1
しかし、新しい文字列をデータに割り当てると、ListView はその項目を更新しません (新しい値がある場合でも、古い値を見ることができBox1
ます - 新しい文字列を割り当てる前に、新しいダブルクリックが表示されBox1 == "new string"
ます)。
なんで?どうすればこの問題を解決できますか?