임베디드 리소스로 정의 된 내 VB.NET 프로젝트에 "strings.resx"라는 문자열 리소스 파일이 있습니다. strings.es.resx
이라는 다른 파일이 있는데, 스페인어로 된 모든 동일한 문자열이 들어 있습니다. 나는 다음과 같은 코드를 사용하여 런타임에 리소스를로드 해요 : 내가 Windows에서 스페인어하는 언어 로케일을 설정하고 다시 로그인 한런타임시 적절한 언어 버전의 문자열 리소스가로드되도록하려면 어떻게해야합니까?
MyStrings = New ResourceManager("myprog.strings", GetType(MainForm).Assembly)
,하지만 난 여전히 영어 문자열 리소스 로딩을 받고있을 때 위 실행됩니다. Windows 로켈이 ES 인 경우 스페인어 리소스를로드하려면 어떻게해야합니까? 나는 그것이 자동으로 처리 될 것으로 예상했다.
현재 UCulture는 es-ES입니다. 양식 리소스는 현지화되어 있습니다. 항상 중립적 인 문화로 보이는 코드에서 사용하는 "리터럴"값입니다. – Robinson
@Robinson - 만약'ResourceManager'의'GetString (string)'메소드를 사용하고 있다면, 명시 적으로'GetString (string, CultureInfo)'오버로드를 시도하고 스페인 문화를 명확하게 전달해 줄 수 있습니까? 여전히 작동하지 않는다면, 내 생각에 bin 폴더에 리소스 파일이 없습니다. –
Duh! 내 실수 ... 문자열이 올바르게로드되고 있습니다. 영어 버전의 문자열이 포함 된 이후에 다른 작업 (영어 설정 파일에서 읽기)을 수행하고 있습니다. 이유는 내 어리 석음 이었기 때문에 답을 자신의 노력에 맞게 표시합니다 : p. – Robinson