2016-10-11 2 views
1

일부 .resw 리소스 파일을 포함하지만 사용하는 클래스 라이브러리 (범용 Windows UWP) 프로젝트를 만들지 만 클래스 라이브러리 프로젝트에서 찾을 수없는 경우로드됩니다 dll을 사용하는 프로젝트에서 dll을 실행하는 동안. 이 DLL을 사용하는 프로젝트에서 resw 파일을 직접 포함하는 경우에만 모든 것이 잘 작동하지만이 문제를 피할 필요가 있습니다.클래스 라이브러리 UWP 내에서 resw 리소스 파일을 사용하는 방법

클래스 라이브러리는이 방법에서 자원지도를 얻을 수

ResourceMap lettersResourceMap = ResourceManager.Current.MainResourceMap.GetSubtree("LocalizationLettersWords"); 

(LocalizationLettersWords은 ​​클래스 라이브러리 프로젝트에 위치한 .resw 파일) 만, null lettersResourceMap 가져옵니다.

답변

2

UWP에서 프로그래밍 방식으로 리소스를 가져 오는 데 ResourceLoader 클래스가 사용됩니다. 따라서 이것을 사용할 수 있습니다 :

string resource1 = ResourceLoader.GetForCurrentView().GetString("YourKey"); 

그러나 UI가 아닌 스레드에서 사용하는 경우 작동하지 않습니다. 이 경우 당신은 예를 들어, 방법 GetForViewIndependentUse을 사용해야합니다

string resource2 = ResourceLoader.GetForViewIndependentUse().GetString("YourKey"); 

당신은 ResourceLoader 클래스 here에 대한 자세한 내용을보실 수 있습니다.

+0

그래도 ResourceMap과 ResourceManager를 사용하는 방법이 있습니까? –

+0

솔직히 말해서 다른 파일에서 리소스를로드해야하는 경우 GetForCurrentView ("fileName") 또는 GetForViewIndependentUse ("fileName") –

+1

을 사용하거나 다음을 시도해 볼 수 있습니다. https : // social .msdn.microsoft.com/Forums/sqlserver/ko-kr/e42fc337-f031-45a7-8313-b8d0cbfa43a5/uwp-do-windows-store-apps-support-localized-resources-in-assemblies-if-so-how -do-you-get-a? forum = wpdevelop –

관련 문제