방금 모든 클라이언트 프로젝트를 .NET 4로 업그레이드하기 시작했으며 WPF를 사용하고 있습니다. 내 모든 뷰 UserControl을 확장하는 기본 클래스에서 상속, 그것은 하나의 제네릭 형식 인수 BaseView 코드 유일한 기본 클래스입니다. .NET 4로 업그레이드하기 전에 간단히 x : TypeArgument를 지정했는데 모든 것이 잘 작동했지만 업그레이드가 끝나면 InitializeComponent() 호출에서 NullReferenceException이 발생합니다. xaml 파일은 Page와 MsBuild : Compile로 설정되어 있습니다. 어딘가에서 읽었을 때 Resource로 설정하려고했지만 빌드조차하지 않았습니다. AddressView : BaseView를 상속 한 코드 파일을 만들고이를 사용하면 잘 작동합니다. 내 XAML 파일에서 형식 인수를 계속 지정하는 방법이 있습니까?WPF 4로 업그레이드 할 때 InitializeComponent에서 일반 형식 인수로
업데이트 : 더 깊은 예외/스택 추적 추가 : 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.
스택 추적 : System.Windows.Markup.WpfXamlLoader.TransformNodes (XamlReader xamlReader, XamlObjectWriter xamlWriter 부울 onlyLoadOneNode 부울 skipJournaledProperties 부울 shouldPassLineNumberInfo, IXamlLineInfo xamlLineInfo, IXamlLineInfoConsumer xamlLineInfoConsumer, XamlContextStack`1 스택 IStyleConnector styleConnector에서
) System.Windows.Markup.WpfXamlLoader.Load (xamlReader xamlReader, IXamlObjectWriterFactory writerFactory, 부울 skipJournaledProperties, 개체 rootObject, XamlObjectWriterSettings 설정, 열린 우리당 기저 URI)
업데이트 2에서 : 어쩌면 당신은 그냥 separa을 마우스 오른쪽 버튼으로 업그레이드하고 te 프로젝트와 동일한 기본 클래스에서 상속하는 동일한 시스템에서 오류가 발생하지 않습니다. 그것은 매우 이상합니다. 문제점을 찾기 위해 문제가있는보기에서 항목을 제거하기 시작합니다.
네, 이미 시도했지만 작동하지 않습니다. 여전히 InitializeComponent() 라인에 직접 던져 넣었습니다. 그리고 똑같은 것을 시도했지만 XAML의 첫 번째 줄에서 컨트롤이 정의됩니다. 보기에서 좀 더 예외가 던져 질 것입니다, 나는 인터넷 검색을 시도하고 관련성이없는 것으로 보이는 아무것도 없으며, 예외가있는 원래 게시물을 업데이트합니다. – dariusriggins
InitializeComponent에서 얻은 스택 추적을 게시 할 수 있습니까? 이것은 실제로 문제의 근원에 가깝기 때문에 마크 업에서 볼 수있는 예외보다 훨씬 유용합니다. –