문제

그리드에 표시하고 싶은 Silverlight 앱이 하나 있습니다. Silverlight 앱이 콘텐츠를 표시하는 방식은 각 그리드 행에서 레코드의 고유 ID에 따라 다릅니다. 불행히도, XAP 파일은 그리드의 각 행에 대해 다시 다운로드됩니다. 크기가 700kb의 크기로 실제로 성능에 영향을 미칩니다. Xap 파일을 한 번 다운로드 한 다음 그리드의 각 행에 대해 재사용 할 수 있습니까?

도움이 되었습니까?

해결책

XAP가 다운로드되면 Silverlight는 Silverlight 컨트롤 인스턴스 당 로컬에 어셈블리 등을 캐시합니다. 실버 라이트 컨트롤의 또 다른 인스턴스를 만들면 이로 인해 자체 도메인이 있습니다.

내 제안은 당신이 requrie 부분을 추상화하고 별도의 XAML로 굽고 가장 필요한 지역에로드하는 것입니다. Marshalling / Event Management 등을 처리하기 위해 여전히 Central .xap이 필요한 경우 Silverlight 3에 다른 Silverlight 인스턴스가 하나의 브라우저 페이지 내에서 서로 대화 할 수있는 로컬 연결 API를 배치했습니다 (예 : Silverligha Can index.html 내에서 실버 라이트B와 대화하십시오)

그러면 그렇게하면 일종의 로컬 대리를 설정할 수 있습니다.

Scott Barnes / Rich Platforms 제품 관리자 / Microsoft.

다른 팁

당신이 할 수 있는지 잘 모르겠습니다. 이론적으로 캐시해야하지만이 경우 이론은 쪼그리고 앉을 가치가없는 것 같습니다.

그것은 <bood> 태그가 다양한 매개 변수로 동작하는 방식에 따라 다르며 이것은 (다른) 은색의 "드물게"문서화 된 Silverlight 영역 중 하나입니다.

가능하지만 쉽지는 않습니다. Xap을 다운로드하여 고립 된 Xap을 참조 할 필요가있을 때마다 Xap을 분리하여 Silverlight 호스트를 만들 수 있지만 1MB 공간 만 사용할 수 있으며 동일한 도메인의 다른 Silverlight 앱이있는 경우 보장되지 않습니다.

당신이 묘사 한 내용을 감안할 때 나는 여전히 당신이하고 싶은 일을하는 데 어떤 가치도 보이지 않습니다. 나는 당신이 그것을 거꾸로 가지고 있다고 생각합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top