0

私は次のクラスを持っています:

public partial class Operation : INotifyPropertyChanged
{
    private int tasks;

    public int Tasks
    {
        get
        {
            return this.tasks;
        }
        set
        {
            if (this.tasks != value)
            {
                this.tasks = value;
                this.OnPropretyChanged("Tasks");
            }
        }
    }

    protected virtual void OnPropretyChanged(string propertyName)
    {
        var handler = this.PropertyChanged;
        if (handler != null)
        {
            handler(this, new PropertyChangedEventArgs(propertyName));
        }
    }

    public event PropertyChangedEventHandler PropertyChanged;
 }

次に、このクラスを dataGrid.DataSource にバインドします。Tasks 変数が変更されるたびに、データグリッドでライブで更新されます。問題は、int の代わりに、すべてのタスクが保存されている List を使用する必要があり、次のような int タスクの代わりに Tasks が List.Count を返すようにすることです。

    public int Tasks
    {
        get
        {

            return this.TASKS.Count;
        }
        set
        {
            if (this.tasks != TASKS.Count)
            {
                this.tasks = TASKS.Count;
                this.OnPropretyChanged("Tasks");
            }
        }
    }

しかし、dataGrid は自動的に更新されません。更新を確認するには更新する必要があります。これを処理する方法について何か提案はありますか? ありがとう!

4

1 に答える 1

0

ListINotifyPropertyChangedコンテンツがいつ変更されたかを知らせるメカニズムやその他のメカニズムは実装されていません。ObservableCollection<T>代わりに使用する必要があります。

于 2012-11-23T10:36:05.907 に答える