programing

WPF - 이미지를 리소스로 Import

powerit 2023. 4. 23. 11:36
반응형

WPF - 이미지를 리소스로 Import

WinForms에서는 이미지를 리소스로 Import할 수 있으며 /bin/Debug 폴더에 컴파일하면 이미지가 계속 작동합니다.

WPF에서 이 기능을 실행하는 방법을 알 수 없습니다.어플리케이션을 실행하면 이미지가 로딩되지 않습니다.이미지가 저장되어 있기 때문입니다./Projects/AppName/images/응용 프로그램은 다음과 같이 컴파일됩니다./Projects/AppName/bin/Debug디버깅 모드로 실행할 때 사용합니다.

이미지 폴더를 복사하여 응용 프로그램이 컴파일된 위치에 저장하기만 하면 됩니까?아니면 다른 방법이 있을까요?이미지를 표시하는 코드는 다음과 같습니다.

<Image Width="300">
    <Image.Source>
        <BitmapImage DecodePixelWidth="300" UriSource="/images/jamsnaps-dark.png" />
    </Image.Source>
</Image>
  • 폴더를 만듭니다(예:imagesVisual Studio 프로젝트에서).
  • 이미지 파일을 폴더에 추가합니다.
  • 설정Build Action로.Resource([속성] 창에서 이 답변의 두 번째 이미지를 참조하십시오).

그럼 다음 글을 써주세요UriSource기존과 같은 자산:

UriSource="/images/jamsnaps-dark.png"

이 URI는 사실상 자원 파일팩 URI입니다.여기서 프리픽스는 XAML 파서에 의해 자동으로 추가됩니다.

뒤에 있는 코드에는

bitmap.UriSource = new Uri("pack://application:,,,/images/jamsnaps-dark.png");

두 가지 옵션:

1) bin/Debug에서 .../../ 를 눌러 어플리케이션 폴더로 이동한 후 이미지로 이동합니다.

  <Image>
      <Image.Source>
           <BitmapImage  UriSource="../../images/jamsnaps-dark.png" />
      </Image.Source>
   </Image>

2) 이미지 파일의 컨텍스트메뉴의 속성에서 콘텐츠로 이미지를 컴파일하고 컴파일하면 디버깅됩니다.부동산에도 로컬 복사를 할 필요가 있는지 기억나지 않습니다(현재 컴퓨터 근처에 없기 때문에 확인할 수 없습니다).

  1. 프로젝트 디렉토리에 이미지 추가
  2. 솔루션 탐색기에서 이미지를 마우스 오른쪽 버튼으로 클릭하고Include in Project

빌드 액션은 다음과 같이 설정해야 합니다.Resource디폴트입니다.

그런 다음 루트에 상대적인 이미지 경로 사용을 시작할 수 있습니다. images/text.jpg라고 하는 폴더에 넣으면images.

언급URL : https://stackoverflow.com/questions/25714085/wpf-import-image-as-resource

반응형