0
我想在同一行中選中複選框時更新列表視圖中的列。複選框是一行的一部分。當複選框被選中時更新列表視圖列
查看:
的複選框:在列
<CheckBox Tag="{Binding ID}" Checked="chbAccount_checked" Unchecked="chbAccount_Unchecked"/>
文本塊需要更新:
<TextBlock Text="{Binding MyColumnValue }" />
代碼背後:
private void chbAccount_checked(object sender, RoutedEventArgs e)
{
CheckBox chb = sender as CheckBox;
int Id= Convert.ToInt16(chb.Tag);
ViewModel.UpdateColumnValue(Id);
myListView.ItemsSource = ViewModel.Accounts;
this.myListView.UpdateLayout();
}
視圖模型:
public void UpdateColumnValue(int Id)
{
foreach(var a in Accounts)
{
if(a.ID == Id)
{
a.MyColumnValue = "Yes";
}
}
}
帳戶列表正在更新,但列表視圖不顯示列中的修改值。我已經嘗試通過listview.item.refresh()刷新列表視圖。沒有工作。
請幫忙。謝謝!
您已經在使用綁定。爲什麼不更新綁定屬性?如果你實現INotifyPropertyChanged你只需要更新你的MyColumnValue屬性。這是MVVM模式的一個優點。 –
我對INotifyPropertyChanged不熟悉。通過一些教程。我想我現在可以處理這個問題。非常感謝你。 :) – sandaru
「是」它正在工作:) :) :) – sandaru