2014-04-10 2 views
0

WPF 응용 프로그램을 실행할 때 출력 창에 많은 바인딩 표현 오류가 표시됩니다. 그러나 각 오류 메시지는 어떤보기 (.xaml) 파일에 오류가 있는지 알려주지 않습니다. 예를 들어, 아래의 오류 메시지가 표시되지 않습니다.WPF 바인딩 표현 오류를 일으키는보기가

System.Windows.Data Error: 40 : System.Windows.Data Error: 40 : 
BindingExpression path error: 'IsVisible' property not found on 'object' 
''PrescriptionViewModel' (HashCode=9677327)'. BindingExpression:Path=IsVisible; 
DataItem='PrescriptionViewModel' (HashCode=9677327); target element is 
'ViewPortContentPanel' (Name=''); target property is 'Visibility' 
(type 'Visibility') 

알아낼 수있는 방법이 있습니까? 내 요소 ViewPortContentPanel은 내 응용 프로그램에서 수십 개의보기에서 사용되며, 여기에 찾는 문제가 있습니다.

감사합니다.

+0

조회수는 몇 번이나 있습니까? XAML을보고 해당 기사를 수정할 위치를 확인하십시오. – gleng

+0

일반적으로 창당 하나의 View Model 개체가 있습니다. 모든 화면에서 하나의 View Model 객체 만 사용하고 있습니까? –

+0

프리 뷰 응용 프로그램으로 뷰가 100 개에 가깝고 뷰의 datacontext가이 유형의 응용 프로그램에서 분명하지 않습니다. 오류에서 언급 한 뷰 모델은 여러 하위 뷰에 속성을 제공하는 복합 뷰 모델입니다. – Ray

답변

0

바인딩과 DataContext를 모두 올바르게 지정했다면 Resharper (경험이없는 경우 최소한 평가판)를 사용하여 PrescriptionViewModel.IsVisible 속성의 모든 용도를 찾고 문제 장소를 파악할 수 있습니다.

PrescriptionViewModel에 속성 IsVisible이없는 경우 일시적으로 만들거나 만들지 않고 "용도 찾기"를 다시 적용 할 수 있습니다.

+0

하지만 그게 내가 풀려고하는 문제입니다. 바인딩이 올바르게 지정되지 않았습니다. 오류는 어떤 뷰 모델을 나타내지 만이 오류가 어느 뷰에서 발생했는지는 표시하지 않습니다. – Ray