0

にバインドされたデータグリッドがありObservableCollection<T>ますItemsSource。次に、各列は、モデルに保持されている T 型のプロパティにバインドされます。

ユーザーがセルを変更すると、モデルのプロパティが変更され、呼び出されたセットが取得されObservableCollection<T>、データベース全体に書き込みたいのですが、この変更が配置されているビューモデルに表示されるようにする方法がわかりませんObservableCollection

これはモデルの私のクラスです。ObservableCollection<MyObject>パーセンテージ プロパティが変更されたときに、ViewModel で更新されたデータベースを更新したいだけです。SQL データベースではないため、DataTable は使用していません。

class MyObject : INotifyPropertyChanged
{

    private string name;
    private int percentage;
    public int Percentage
    {
        get
        {
            return percentage;
        }
        set
        {
            percentage = value;
            System.Diagnostics.Debug.WriteLine(percentage);
            doSomething();
            OnPropertyChanged("Percentage");
        }
    }
    public string Name
    {
        get
        {
            return name;
        }

        set
        {

            name = value;
        }


    }
    public MyObject(string name, int percent)
    {
        Name = name;
        Percentage = percent;
    }



    #region INotifyPropertyChanged
    public event PropertyChangedEventHandler PropertyChanged;

    public void OnPropertyChanged(String propertyName)
    {
        if (this.PropertyChanged != null)
            this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    }

    protected virtual void NotifyPropertyChanged(String propertyName = "")
    {
        PropertyChangedEventHandler handler = PropertyChanged;
        if (handler != null)
        {
            handler(this, new PropertyChangedEventArgs(propertyName));
        }
    }
    #endregion
}
4

0 に答える 0