Изменен делегат события C # для свойства, затем получите значение и имя класса для прохождения через сокет и перейдите на другую сторону - PullRequest
0 голосов
/ 06 сентября 2018

Я пишу несколько классов, с которыми я хочу синхронизировать свойства через сокет. Сетевой код в значительной степени написан, и я дошел до наилучшего способа синхронизировать их по сети.

У меня есть обычное свойство и настройка события

public class TestScript {

    private bool test;
    public bool Test {
        get {
            return test;
        }

        set {
            if(value != test) {
                test = value;
                RaisePropertyChanged("test");
            }
        }
    }


    public static event PropertyChangedEventHandler PropertyChanged;
    private void RaisePropertyChanged(string name) {
        PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
    }
}

И слушатель настроен как

public class TestClass {

    private void OnPropertyChanged(object obj, PropertyChangedEventArgs e) {

        Console.WriteLine(" hello " + e.PropertyName);
    }

}

Теперь вывод отображается с именем свойства, которое изменилось. То, что я не знаю, как поступить, так это сказать, как называется класс и каково новое значение.

Затем, с другой стороны, когда пакет получен, я хотел бы взять это значение и сохранить его обратно в класс.

Любой, кто может пролить свет на то, о чем мне, возможно, нужно почитать, может быть, даже предоставит пример того, что мне нужно сделать.

Edit:

Чтобы было ясно, у меня есть часть сокета, работающая, отправляющая и получающая. Мне просто нужна синхронизация изменения свойства.

...