2011-11-12 4 views
0

내가 10 시간 전에이 문제를 해결했지만 나는 누군가가 XAML 완전한 로켓 과학 팩 URI를하기로 결정하기 때문에, 그것을 수행하는 방법을 정확히 기억할 수 없다 같은 느낌 ..WPF 리소스 URI

나는이 자원으로 표시된 이미지. 마크 업에서이 이미지를 참조해야하는 클래스 라이브러리 (dll)에 xaml UserControl이 있습니다. 이 UserControl 및 이미지를 두 dll - Silverlight 버전 및 WPF 버전 있습니다.

이미지는 두 버전 모두에서 UserControl과 같은 디렉터리에 있습니다. "자원"으로 표시되었습니다.

Silverlight dll을 참조하는 Silverlight 응용 프로그램과 WPF dll을 참조하는 WPF 응용 프로그램이 있습니다.

나는 다음과 같은 염두에두고, 내 XAML 참조 어셈블리 지역 상대 URI로 이미지를 만들 수있는 방법

다음 SL 이후,

  1. 내가 어셈블리 이름을 모르는 및 WPF 어셈블리의 이름을 다르게 .
  2. 실버 라이트와 WPF DLL은 해당 UserControl 및 이미지의 SL 버전은 SL 프로젝트에서 "링크"라는 이름의 디렉토리에 파일을 연결되어 있습니다 (어셈블리의 루트에 상대적인 다른 경로를 가지고있다. 나는 '

IT와 제어가 모두 프로젝트 루트 폴더에있는 경우

./MyImage.png 
MyImage.png 
/MyImage.png (which I know shouldn't work) 

답변

0

그냥 "MyImage.png는"작업을해야 사용 해봤 모두 제어 미만인 경우 -.. 당신은 "컨트롤/MyImage.png"경로 ISN을 필요 제어 위치와 관련이 없으며 프로젝트 루트 폴더에 상대적입니다.

+0

그래서 어떻게 제어 경로에 상대적으로 만들 수 있습니까? 나는 전혀 할 수 있니? – Jeff

+0

일반적인 접근 방법은 모든 이미지 파일을 한 폴더에 덤프하고 다른 폴더로 제어한다는 것입니다. 컨트롤에 상대적인 경로를 사용해야하는 경우에는 컨트롤 상대 경로를 프로젝트 상대 경로로 변환하는 다른 연결된 종속성 속성을 정의하는 것과 같은 작업을 수행해야합니다. 단순히 실제 경로를 사용하는 것보다 오류가 발생하기 쉽습니다. –

+0

그래서 프로젝트 경로가 WPF 프로젝트의 "컨트롤"이고 SL의 "링크 된 \ 컨트롤"인 경로가 두 개의 프로젝트 인 경우 하나의 WPF와 하나의 SL이있는 경우 어떻게 작동합니까? – Jeff