2012-11-17 2 views
0

Image에 대한 바인딩을 such examples에 따라 설정하려고합니다. 내 XAML :WPF : XAML의 DataContext 속성으로 이미지 바인딩

<Image x:Name="imgPhoto" x:FieldModifier="public" HorizontalAlignment="Stretch" 
    VerticalAlignment="Stretch"> 
    <Image.Source> 
     <BitmapImage UriSource="{Binding Path=Photo, Mode=TwoWay}"/> 
    </Image.Source> 
</Image> 

하지만 예외 (아래 참조)가 생성자 창에서 발생합니다. 왜 그렇게됩니까?

System.Windows.Markup.XamlParseException는 가 = -2146233087 메시지 System.Windows.Media.Imaging.BitmapImage = "초기화"는 "예외가 발생했습니다."HRESULT를 발생 행 번호 "57"와 행 항목 "34". Photo

Employe는 아이템의 속성에 대한 DataContext하는 소스이다. 이 속성은 "pack://application:,,,/myImages/male.png" 문자열 값입니다. 내 Window 인스턴스의 속성을 설정합니다. 하지만 내 값을 통해이 속성을 초기화하는 것보다 먼저 Window의 생성자에서 예외가 발생합니다. 내 실수는 어디 갔지?

답변

0

당신은 Image.Source 당신의 Photo 속성에 직접 바인딩 할 수 있습니다

<Image Source="{Binding Path=Photo}" /> 

그리고 Photo 속성은 다음과 같아야합니다

PNG 파일을 물론
"/YourProjectName;component/myImages/myPhoto.png"; 

ResourceBuild Action 설정이 있어야합니다.

msdn에 관해서는 아래 링크에서 확인하실 수 있습니다.

Pack URIs in WPF