애플리케이션 리소스 관리
리소스 파일은 애플리케이션의 일부이지만 컴파일되지 않는 파일입니다(예: 아이콘 파일 또는 오디오 파일). 이러한 파일은 컴파일 프로세스에 포함되지 않으므로 이진 파일을 다시 컴파일할 필요 없이 변경할 수 있습니다. 애플리케이션을 지역화할 계획인 경우 모든 문자열 및 애플리케이션을 지역화할 때 변경해야 하는 다른 리소스에 대해 리소스 파일을 사용해야 합니다.
주의
.resx
파일의 리소스는 안전하지 않은 BinaryFormatter
을(를) 사용하여 직렬화할 수 있습니다. 신뢰할 수 있는 .resx
파일만 빌드 프로세스에 포함합니다.
.NET 앱의 리소스에 대한 자세한 내용은 .NET 앱의 리소스를 참조하세요.
리소스 작업
관리 코드 프로젝트에서 프로젝트 속성 창을 엽니다. 다음 방법 중 하나로 속성 창을 열 수 있습니다.
- 솔루션 탐색기에서 프로젝트 노드를 마우스 오른쪽 단추로 클릭하고 속성 선택
- Ctrl+Q 검색 상자에 프로젝트 속성 입력
- 솔루션 탐색기에서 Alt+Enter 키 선택
이 리소스 탭을 선택하면 프로젝트에 .resx 파일이 포함되지 않은 경우 하나를 추가하고, 다른 종류의 리소스를 추가 및 삭제하고, 기존 리소스를 수정할 수 있습니다.
Visual Studio 2022 이상에서의 리소스 탐색기 개선 사항
리소스 탐색기는 Visual Studio 2022 버전 17.11부터 크게 개선되었습니다. 개선된 Visual Studio 리소스 탐색기 소개를 참조하세요.
하나 이상의 리소스 파일(.resx
)이 포함된 .NET 프로젝트가 있어야 새 리소스 탐색기를 사용할 수 있습니다. 리소스 탐색기를 열려면 마우스 오른쪽 버튼으로 솔루션 탐색기 리소스 파일을 클릭하고 리소스 탐색기를 사용하여 열기>를 선택합니다. 또는 Ctrl+Alt+R 키보드 단축키를 사용할 수도 있습니다.
새 리소스 탐색기를 열면 저장한 모든 리소스에 대한 개요가 각 파일의 로캘과 함께 왼쪽에 표시됩니다. datagrid에 표시되는 로캘을 구성할 수 있습니다. 번역을 나란히 비교하고 현재 위치에서 편집하기 위해 이 인터페이스를 사용할 수 있습니다.
리소스 문자열 검색하기
모든 리소스 파일을 검색하는 텍스트를 수행하기 위해 표의 왼쪽 위에서 검색 상자를 사용할 수 있습니다. 도구 모음의 검색 상자에 입력하고 Enter 키를 누르면 리소스를 검색할 수 있습니다. 쿼리와 일치하는 리소스만 데이터 표에 이름, 값 또는 주석으로 표시됩니다. 부분 일치를 수행하기 위해 와일드카드(*
)를 사용하고, 정확한 일치를 수행하기 위해 따옴표("
)를 사용할 수 있습니다.
리소스의 특정 번역에 주석 추가하기
문자열의 의미, 사용량 또는 톤 등의 리소스에 대한 자세한 정보 또는 컨텍스트를 제공하는 유용한 방법이 주석입니다. 리소스의 각 번역에 주석을 추가하기 위해 리소스 탐색기를 활용하고, 데이터 표에서 한 번에 모두 볼 수 있습니다.
주석을 달려는 번역에 해당하는 셀을 선택한 다음, 도구 모음에서 주석 편집 버튼을 클릭하거나 Shift+Enter 키를 누르면 리소스에 주석을 추가할 수 있습니다. 주석에 입력할 수 있는 셀 아래에 주석 상자가 나타납니다. 주석을 저장하기 위해 Enter 키를 누르거나, 삭제하기 위해 Esc 키를 누릅니다.
기존 주석을 편집하거나 삭제하기 위해 주석 상자를 클릭하거나 동일한 바로 가기 키를 사용할 수 있습니다. 주석이 있는 각 셀의 모서리에 있는 작은 삼각형 아이콘을 찾으면 리소스에 대한 모든 주석을 볼 수 있습니다. 주석 텍스트가 있는 도구 설명을 보거나 클릭하여 주석 상자를 열기 위해 아이콘을 마우스로 가리킬 수 있습니다.
리소스 파일의 여러 사용자에 의해 주석이 사용될 수 있습니다. 번역가, 개발자 또는 리소스 관리자는 주석, 질문, 설명 또는 주의 사항을 번역과 함께 남길 수 있습니다. 주석이 있다는 것을 각 셀의 모서리에 있는 작은 아이콘을 통해 보여 줍니다.
리소스 필터링
도구 모음에서 필터 아이콘을 클릭하고 적용할 조건을 선택하면 리소스를 필터링할 수 있습니다. 리소스를 이름, 값, 주석, 형식 또는 파일별로 필터링 가능합니다.
필터 | 설명 |
---|---|
이름 | 특정 이름 또는 접두사가 있는 리소스만 표시합니다. |
값 | 특정 값이 있거나 특정 문자열을 포함하는 리소스만 표시합니다. |
Comment(설명) | 주석이 있거나 특정 문자열이 주석에 포함된 리소스만 표시합니다. |
Type | 문자열, 이미지 또는 아이콘 등의 특정 형식의 리소스만 표시합니다. |
파일 | 특정 파일 또는 문화권에 속하는 리소스만 표시합니다. |
결과의 범위를 좁히고 제거하기 위해 필터 지우기 단추를 클릭하여 여러 필터를 결합할 수 있습니다.
유효성 검사 및 경고
런타임 시 {0}
, {1}
또는 {name}
와(과) 같은 동적 값으로 대체되는 특수 토큰이 자리 표시자입니다. 리소스에서 자리 표시자를 사용하는 경우 모든 지역화에서 일관되는지 여부를 확인해야 합니다. 확인하지 않으면, 오류 또는 예기치 않은 동작이 앱에서 표시될 수 있습니다.
새 리소스 탐색기는 각 리소스에 대한 자리 표시자의 유효성을 자동으로 검사하고 기본 문화권과 다른 지역화가 일치하지 않는 경우에는 경고 아이콘을 표시합니다. 예를 들어 리소스의 기본값이 "Hello, {name}!"이고 스페인어 값이 "Hola, {nombre}!"인 경우, 자리 표시자 이름이 다르다는 경고 아이콘이 표시됩니다. 아이콘을 마우스로 가리키면 일치하지 않는 세부 정보가 포함된 도구 설명이 표시되며, 수정하기 위해 아이콘을 클릭할 수 있습니다.
앱의 사용자 환경에 영향을 줄 수 있는 또 다른 일반적인 문제는 누락된 번역입니다. 리소스에 대한 번역을 특정 문화권에 대해 제공하지 않는 경우, 기본 문화권으로 앱이 대체됩니다. 이러한 사항은 특정 사용자에게 적절하거나 바람직하지 않을 수 있습니다. 리소스에 대한 값이 특정 문화권에 대해 존재하는 않는 경우, 리소스 탐색기를 사용하면 이 문제를 방지하기 위해 경고 아이콘을 표시할 수 있습니다. 예를 들어,> 기본값이 File
인 리소스가 있으며 프랑스어 문화권에 대한 값이 없는 리소스가 있는 경우에는 번역이 누락되었다는 경고 아이콘이 표시됩니다. 마우스로 아이콘을 가리키면 값 없음 메시지가 포함된 도구 설명을 보고 값을 추가하도록 선택할 수 있습니다.
사용자 지정 옵션
화면 읽기 프로그램 및 보조 기술과 호환되는 Visual Studio 2022 이상의 리소스 탐색기는 시각 장애 또는 장애가 있는 개발자가 보다 쉽게 액세스할 수 있습니다. 데이터 그리드를 탐색하고, 값과 메모를 편집하고, 일반적인 작업을 수행하기 위해 바로 가기 키를 사용할 수 있습니다. 또한 각 셀의 내용과 도구 설명 및 경고를 읽기 위해 내레이터를 사용할 수 있습니다.
도구 모음의 확대/축소 슬라이더 또는 Ctrl+= 및 Ctrl+- 키 바로 가기 키를 사용하여 확대/축소 수준을 조정합니다. 확대/축소 수준을 기본값으로 다시 설정하기 위해 Ctrl+0을 사용합니다.
Visual Studio 환경의 나머지 부분과 리소스 탐색기의 테마는 일치합니다. 밝은 테마, 어두운 테마 또는 파란색 테마 중에서 선택이 가능하며, 그에 따라 리소스 탐색기가 조정됩니다. 또한 데이터 표의 글꼴과 색을 변경하기 위해 도구>옵션>환경>글꼴 및 색 대화 상자를 사용할 수 있습니다.
다른 프로젝트 형식의 리소스
.NET 프로젝트의 리소스는 다른 프로젝트 형식과 다른 방식으로 관리됩니다. 리소스에 대한 자세한 내용은 다음을 참조하세요.
- UWP(유니버설 Windows 플랫폼) 앱은 앱 리소스 및 리소스 관리 시스템 참조
- C++/CLI(관리형) 프로젝트, 데스크톱 앱의 리소스 참조
- C++ 프로젝트는 리소스 파일에 대한 작업 및 방법: 리소스 파일 만들기 참조
- 리소스 뷰 창(>다른 창 보기>리소스 뷰)을 사용하여 프로젝트에 포함된 리소스 파일을 표시합니다.
지원 옵션
애플리케이션 리소스 관리에 문제가 발생하는 경우 리소스 편집기에서 오류 문제를 해결하세요.