Windows Phone 72010. 8. 16. 11:03

팀장님이 알려주신거다.. 아 역시 아직 배워야 할께 많다…

 

어떤 데이터를 비교 해야하는데(Class Type) 종료하기전에 isolatedStroage에 해당 데이터를 저장하고

 

다시 불러들일때 isolatedStroage에 있는 데이터는 같지만 메모리의 저장위치가 달라서 비교했을때

 

False로 나온다. 이때는 어떡해야 할까? foreach문으로 해당 문을 하나씩 비교 해야하나?

 

물론 비교할려면 방법은 많지만 위에 방법은 추천하지 않는다.

 

팀장님이 주신 해결방법이다.. 천재 ㄷㄷㄷ

 

비교하는 데이터 class에 equal을 override하는 방법으로 정말 간단하게 해결되었다.

 

public class CountryTitleData : INotifyPropertyChanged
    {
        bool _isChecked;
        public event PropertyChangedEventHandler PropertyChanged;
 
        public string Name { get; set; }
        public string Flag { get; set; }
        public string Code { get; set; }
        public bool Checked
        {
            get
            {
                return _isChecked;
            }
            set
            {
                if (_isChecked != value)
                {
                    _isChecked = value;
                    if (PropertyChanged != null)
                    {
                        PropertyChanged(this, new PropertyChangedEventArgs("Checked"));
                    }
                }
            }
        }
        public int FontSize { get; set; }
 
        public override bool Equals(object obj)
        {
            CountryTitleData cd =  obj as CountryTitleData;
 
            return Code == cd.Code;
        }
    }
Posted by 동동(이재동)