Diskuze: NotifyPropertyChange ve ViewModelu o úroveň výš

C# .NET .NET (C# a Visual Basic) NotifyPropertyChange ve ViewModelu o úroveň výš American English version English version

Avatar
Lako
Člen
Avatar
Lako:

Ahoj...
Pohrávám si s wpf a dorazil jsem k takové otázce:
Mám přibližně takovýto viewModel:

třída viewModelu:

 public  List<VideoData>  VideoData
        {
            get { return _VideoData; }
            set
            {
                if (_VideoData != value)
                {
                    _VideoData = value;
                    NotifyPropertyChanged(" VideoData");
                }
            }
        }
        private  List<VideoData> _VideoData;

public int DisplayedCount
        {
            get
            {
                return
                    VideoData.Count(x => x.IsSelected == true);
            }
            set
            {
                if (_displayedCount != value)
                {
                    _displayedCount = value;
                    NotifyPropertyChanged("DisplayedCount");
                }
            }
        }
        private int _displayedCount;


třída videoData:
public bool IsSelected
        {
            get { return _isSelected; }
            set
            {
                if (_isSelected != value)
                {
                    _isSelected = value;
                    NotifyPropertyChanged("IsSelected");
                    //NotifyPropertyChanged("DisplayedCount");
                }
            }
        }
        private bool _isSelected;
....

No a já mám IsSelected naštelovaný na checkboxy, když s nima hýbu, tak se vlastnost IsSelected mění. A teď bych potřeboval, aby se vždycky změnila i vlastnost DisplayedCount, která defakto přepočítává kolik je zaškrtnutých textboxů...
Zakomentovaným kódem to nefunguje.
napadají mě prasácká řešení, ale chci to udělat správně...
Děkuji za návrhy a odpovědi.

(samozřejmě mám všude implementovaný Notifypropertychan­ge, atd..)

Editováno 7.4.2014 21:01
 
Odpovědět 7.4.2014 21:00
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.