Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Заморочка интересная с WPF binding

02.12.20 17:23
Re: Заморочка интересная с WPF binding
 
  moose коренной житель
в ответ AlexNek 02.12.20 16:45

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

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

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


чтобы вас не отвлекать на List, ObservableCollection и прочую муть, возьмем класс


public class Person {
    public string Name { get; set; }
    public int Age { get; set; }
    public Person (string n, int a){
        Name = n;
        Age = a;
    }
}

так вот если вы сделаете так:

    private Person _person = new Person ("Name0", 10);
    public Person person { get { return _person; }}
...
    _person.Age++;
    OnPropertyChanged ("person");
...


, то тичего не произойдет.

а так - другое дело


    _person = new Person (_person.Name, _person.Age+1);
    OnPropertyChanged ("person");
 

Перейти на