0

私の質問を読んでくれてありがとう。

状況:

私は観察可能なコレクションを持っています

CheckableTags = new ObservableCollection<CheckableListItem<Item>>();

ラッパー クラスCheckableListItem<Item>は、オブジェクト Item ごとに bool を追加します。

public class CheckableListItem<T> : INotifyPropertyChanged
{
    private bool mIsChecked;
    private T mItem;

    public event PropertyChangedEventHandler PropertyChanged;

    public CheckableListItem(T item)
    {
        mItem = item;
    }

    public bool IsChecked
    {
        get
        {
            return mIsChecked;
        }
        set
        {
            mIsChecked = value;
            OnPropertyChanged("IsChecked");
            MeasConSettings.Current.CheckableTags_CheckedChanged("ENTIRE OBJECT HERE");
        }
    }

    public T Item
    {
        get
        {
            return mItem;
        }
        set
        {
            mItem = value;
            OnPropertyChanged("Item");
        }
    }

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

ユーザーがチェックボックスをオンにすると、bool 変数が変更されます。これがMeasConSettings.Current.CheckableTags_CheckedChanged("ENTIRE OBJECT HERE");、bool 変数のプロパティで関数を起動する理由です。

機能は次のとおりです。

public void CheckableTags_CheckedChanged(object sender)
{}

私の質問は次のとおりです: オブジェクト全体をブールのプロパティからビューモデルの関数に送信するにはどうすればよいですか?ブールの2つの要素を持つCheckableListItemクラスのオブジェクトを受信するには、フィールド「ENTIRE OBJECT HERE」に何を送信する必要がありますか?変数とアイテム。

可能であれば、オブジェクトへの参照を取得して、受信関数にコピーできるようにします。

代替案: これが不可能な場合、他に何ができますか?

前もって感謝します。

4

1 に答える 1