2010-04-05 1 views
0

Silverlight 3에서 NavigationFramework를 사용하고 있으며로드중인 xaml의 UserControl 생성자가 호출되지 않는 문제가 발생합니다. 왜냐하면 내가 xaml에있는 UserControl은 실제로 다른 사용자 컨트롤에서 파생되기 때문입니다.Silverlight의 탐색 프레임 워크 userControl이 파생 된 유형의 경우 생성자를 건너 뜁니다.

나는 특정 중단 점을 가진 디버거를 밟았으며 생성자는 완전히 무시되었습니다.

유형이 uctrlBaseMyWindow 인 MyWindowBlue가 있습니다.

xaml이 'navigated'이지만 MyWindowBlue의 생성자가 무시 될 때 uctrlBaseMyWindow의 생성자가 호출됩니다.

마크 업을 통해 사용자 정의 컨트롤을 직접 추가하는 경우에는 그렇지 않습니다.

누구든지이 문제가 있습니까?

MyWindowBlue에 내가 이동 사용하고있는 코드는

  this.MyContentFrame.Navigate(new Uri("/Controls/uctrlMyWindowBlue.xaml", UriKind.Relative)); 

사람이로 실행되거나 어떤 도움을 제공 할 수있다?

감사합니다.

답변

0

내 코드에서 오류를 발견했습니다.

이것은 내 XAML의 오류 때문이었습니다. 사용자 정의 컨트롤을 다른 폴더로 이동했기 때문에 C# 코드 뒤에는 네임 스페이스의 한 위치에 같은 이름의 형식이 있지만 XAML 태그에는 다른 위치 (원래 폴더)에 형식이 있으므로 생성자가있는 부분 클래스가 실제로 인스턴스화 한 유형에 연결되지 않았습니다.

유형 참조가 네임 스페이스의 적절한 위치를 가리 키도록 수정되었으며 이제는 부분 클래스 코드 숨김이 다시 링크됩니다.

관련 문제