나는 wpf - mvvm 모델에서 일하고있다.속성이 변경된 이벤트의 값을 속성에 할당 할 수 있습니까?
저는 "marketName"이라는 텍스트 상자가 있습니다. xaml에서 "newmarketname"(내 viewmodel에 정의 된) 속성을이 텍스트 상자에 바인딩합니다. 일단 사용자가 해당 텍스트 상자에 새로운 시장 이름을 입력하면 "newmarketname"의 "set"메소드가 호출됩니다.
"newmarketname"의 set 메소드에서 PropertyChanged 이벤트를 호출합니다.
그리고 속성 변경 처리기는 시장 이름이 이미 있는지 확인하는 기능을 호출합니다. "예"인 경우 string.Empty를 속성 "newmarketname"에 할당합니다. 그래서 "newmarketname"의 set 메소드가 다시 호출되어 PropertyChanged 이벤트가 호출됩니다.
하지만 문제는 "newmarketname"의 값이 비어 있어도 UI에 반영되지 않는 것입니다.
무엇이 문제입니까?
뒤에 UI 및 코드에서 모두 변경 사항을 반영합니다 –
이 PropertyChanged 이벤트는 INotifyPropertyChanged와 관련이 있습니까? 그렇다면 왜 거기에서 (기존 시장 이름을 확인하기 위해) 함수를 호출하고 있는지, setter 자체에서 해당 검사를 수행 한 다음 변수를 업데이트하고 PropertyChanged 이벤트를 호출하는 것이 좋습니다. – akjoshi
Bcoz ...이 뷰 모델의 모든 속성에 대해 ... 하나의 메서드를 호출하는 중 ... 속성에 따라 무언가를 수행 할 것입니다 ... – Relativity