GSI


이 오류가 뭔지 처음에는 많이 애매했다.
이게 나온 경우는 아래와 같다.

UnitProject로 사용자 정의 컨트롤을 하나 만들었습니다.
그리고 테스트가 제대로 되서
메인 프로젝트에 해당 Xaml, cs 파일의 내용을 그대로 복사

그렇게 했을때 오류가 발생하더라구요.

오류 CS0103: 'InitializeComponent' 이름이 현재 컨텍스트에 없습니다.

왜 나왔냐.. 찾아 보니까 문제는 네임스페이스였습니다.

xaml 코드에서 x:Class="WpfApplication1.ucStartup" 라는 부분이 있었는데
메인 프로젝트의 네임 스페이스는 WpfApplication1 이게 아니였기 때문입니다.

그렇다 보니 cs 파일의 생성자 부분의 'InitializeComponent'  메소드가 네임스페이가 틀리게 되면
호출되지 않게 됩니다.

그러면 'InitializeComponent'  이 메소드는 어디 있는가?

이건 컴파일 타임에서 생성되며 보통 Xaml 파일이 obj/Debug/**.g.cs 파일로 만들어 지는데요.
그 속에 존재를 하게 됩니다.

뭐.. 잘만 하면 나오지 않는 오류이지만, 어떤 오류인지 알고 나니 더 좋다고나 할까요? ^^
Posted by gsi
: