を再描画ません。コレクションが変更されると、アイテムはリストに正常に追加されますが、リストボックスのサイズを変更してリストボックスを強制的に再描画するまで、表示は更新されません。WPFリストボックスIのようにXAMLで定義されたリストボックスを持っている
なぜでしょうか?
EDIT:INotifyPropertyChangedの実装
public class FileScannerPresenter : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private FileScanner _FileScanner;
public FileScannerPresenter()
{
this._FileScanner = new FileScanner();
}
public List<DirectoryInfo> SelectedDirectories
{
get
{
return _FileScanner.Directories;
}
}
public void AddDirectory(string path)
{
this._FileScanner.AddDirectory(path);
OnPropertyChanged("SelectedDirectories");
}
public void OnPropertyChanged(string property)
{
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(property));
}
}
}
あなたは右w.r.t.ですなぜ私の前のコードスニペットが働いたのですか?更新しました。 +1 – Gishu
私はObservableCollection内のプレゼンタークラスにコレクションを抽象化し、必要に応じてそのクラスをスキャナークラスに渡すだけでした。 – benPearce