나는 C# 응용 프로그램을 가지고 있으며 리소스 관리자를 사용하여 다른 resx 파일을 참조하여 여러 언어를 지원하도록 노력하고 있습니다.런타임시 언어를 바꾸기 위해 현재 Resource Manager를 어떻게 변경합니까?
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("project.resources.en-US", typeof(resources.en-US).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
이 어떻게 런타임에 System.Resources.ResourceManager("project.resources.it-IT", typeof(resources.it-IT).Assembly)
에 System.Resources.ResourceManager("project.resources.en-US", typeof(resources.en-US).Assembly)
를 전환 할 수 있습니다 내 Designer.cs 코드를 수정하지 않고 :
편집 : 나는 내 디자이너의 코드를 변경하기로되어 있지 않다 실현, 명확히하기 위해,하지만 난 다른 RESX 파일에 액세스 할 수 있도록 그것을 만들기 위해 노력하고있어. 제 질문이 잘못 되었다면 사과 드리지만, 제가 말하는 것에 대해 완전히 이해하지 못하고있는 것 같습니다. 나는 현재 위성 어셈블리를 조사 중이다.
Designer.cs 파일의 코드를 편집하지 마십시오. 문화권에 독립적 인 기본 코드입니다. 당신은 어쨌든 이러한 변경 사항을 잃게됩니다. 자원 전환은 시스템 언어에 따라 자동으로 이루어집니다. MSDN 라이브러리에서 "위성 어셈블리"를 찾습니다. –