2009-05-16 4 views
6

Silverlight 응용 프로그램 내에서 이미지를 표시하려하지만 응용 프로그램을 실행할 때 이미지가 표시되지 않습니다. Visual Studio 내에서 프로젝트를 만들 때 "빌드시 Silverlight를 호스팅 할 테스트 페이지 자동 생성"옵션을 선택했습니다. 예를 들어응용 프로그램을 실행할 때 이미지가 실버 라이트로 표시되지 않습니다.

전체 코드 :

<UserControl x:Class="SilverlightApplication3.Page" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Width="400" Height="300"> 
    <StackPanel>   
     <Image Source="http://www.beachtownpress.com/db5/00415/beachtownpress.com/_uimages/beach7.jpg" /> 
    </StackPanel> 
</UserControl> 

응용 프로그램은 비주얼 스튜디오 내에서 완벽하게 나타납니다,하지만 응용 프로그램을 실행할 때, 이미지가 표시되지 않습니다. 어떤 아이디어?

+0

이미지를 로컬로로드하려고 했습니까? –

+0

아니요, URL에서 이미지를로드해야하기 때문입니다. –

+0

위의 코드가 작동하지 않는 이유는 간단합니다. –

답변

1

음 ...

이 문서에 살펴 보자 :

http://msdn.microsoft.com/en-us/library/system.windows.controls.image.source(VS.95).aspx

내가 주요 문제는 당신이 크로스 도메인 호출을하는 것입니다 생각, 단지 및 조언 : 다운로드 들러, 데이터를 요청하는 서버가 도메인 간 호출을 허용하는지 확인합니다 (그냥 시도해보고, flckr에서 이미지를로드하고 어떤 일이 발생하는지 확인합니다).

하나의 솔루션은 서버 측에서 터널링을 사용할 수 있습니다 (도메인의 사용자 정의 http hanlder는 원격 서버의 이미지를 가져 와서 SL 탄원서로 리디렉션 함).

HTH 브라 울 리오는

0

귀하의 예를 절대적으로 노력하고 있습니다. 방금 해봤 어.

문제가 네트워크에있을 수 있습니까?

Fiddler을 통해 네트워크 통신을 디버깅 할 수 있습니다.

0

크로스 도메인 URL 액세스는 이미지 컨트롤에서 허용되지만 크로스 스키마 액세스는 허용되지 않습니다. 자동으로 생성 된 테스트 페이지를 사용하여 실행하면 로컬 드라이브 (FILE 프로토콜 아래에서 간접적으로 실행됩니다)에서 실행되므로 HTTP 프로토콜에 대한 크로스 구성이 허용되지 않습니다. Silverlight 컨트롤이 포함 된 페이지를 http://localhost에서 실행하여 트릭을 수행해야합니다.

참조 : URL Access Restrictions in Silverlight

또는 실버 라이트 프로젝트 디버그 창에서 (안 웹 프로젝트) 속성에서

0

이것은 진짜 쇼 스토퍼를 테스트하기 위해 OOB 응용 프로그램으로 실행하도록 선택! ! webservice의 웹 서버에 어리석은 파일을 설치하는 경우에도 적어도 webservice 호출은 가능합니다. 어쩌면이게 도움이 될거야. 이미지 용 웹 서버에 clientaccesspolicy.xml을 설치하십시오. http://msdn.microsoft.com/en-us/library/cc645032%28VS.95%29.aspx

관련 문제