WPF 컨트롤 용 VSIX 설치 프로그램을 만들려고합니다.다른 어셈블리에 정의 된 유형의 WPF 도구 상자 설치자
간단하지만 "쉬운"버전은 VSIX 프로젝트에서 WPF 컨트롤을 만드는 것으로 가정합니다.
문제는 내 DLL 중 하나에 깊이 자리 잡고있는 UserControl을 얻었 기 때문에 최상의 디자인이라고 생각하지 않습니다. 거기에두고 싶습니다만,이 작업을 수행 할 수없고 컨트롤을 도구 상자에 추가 할 수 없습니다.
하나의 옵션은 도구 상자에 컨트롤 어셈블리에 설치해야하는 코드를 이동하는 것이지만 Microsoft.VisualStudio.Shell.Immutable.10.0.dll에 종속성을 추가합니다. 이 어셈블리는 Visual Studio가 설치된 사람과 VS가 설치되어 있지 않은 서비스에서 실행되는 원격 서버에서 모두 사용되므로 방해가되지 않습니다.
내가 시도한 또 다른 옵션은 RegistrationAttribute를 프록시에 적용하여 도구 상자 설치 관리자 VSIX를 "트릭"하여 다른 어셈블리에 정의 된 유형을 등록하는 것이 었습니다. 그것이 효과가있을 것이라고 생각했지만 이상한 일이 일어났습니다.
대신 두 개의 컨트롤을 얻는, 내 네임 스페이스의 일부를 에코 일부 이상한 이름 탭, 국경 통제의 무리 (표준 WPF 경계)을 얻는다.
컨트롤이 VSIX 이외의 어셈블리에 정의되어있을 때 도구 상자에 WPF UserControl을 등록하려면 어떻게해야합니까?
WPF 컨트롤이 VSIX 프로젝트에 있어야한다는 가정은 어디입니까? 또한 "쉬운"버전이란 무엇을 의미합니까? – Matt
@Matt : 도구가 어떻게 설계되었는지는 가정하지 않습니다. MSDN 연습을 [다음] (http://msdn.microsoft.com/en-us/library/ee712573.aspx) 및 [여기] (http://msdn.microsoft.com/en-us/library) 따라 /ee712574.aspx) 또는 설치된 템플릿을 보면 설치 프로그램과 컨트롤을 동일한 프로젝트에서 조합 한 튜토리얼과 템플릿을 볼 수 있습니다. 또는 내 질문에 대한 답변을 시도해 볼 수 있습니다.이 경우 다른 방법으로는 아무 것도 * 쉽지 않습니다. – Will
@ 당신의 요지를 보았습니다. ProvideToolboxControl 속성이 당신이 이야기하는 의존성 인 것처럼 보입니다. – Matt