2012-03-26 2 views
0

WP7 애플리케이션에서 사전을 병합하는 데 약간의 문제가 있습니다. 앱에 많은 페이지가 포함되어 있고 로딩 시간이 5 초인 시장 제한을 초과했습니다. 로드 시간을 줄이기 위해 대부분의 페이지와 UI를 별도의 클래스 라이브러리에 넣어야했습니다. 문제는 페이지가 글로벌 app.xaml에서 정적 리소스를 참조한다는 것입니다. 앱에서 xaml 항목을 이동하려고했습니다. xaml을 클래스 라이브러리 프로젝트의 별도 리소스 사전에 추가합니다. 또한 모든 페이지에서 해당 리소스 사전 파일을 참조했습니다. 재산 'System.Windows.ResourceDictionary.Source'에 할당하지 못했습니다 클래스 라이브러리의 페이지에서 xaml 사전 리소스를 참조하십시오.

<phone:PhoneApplicationPage.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary Source="Resources.xaml" /> 
     </ResourceDictionary.MergedDictionaries> 
       <Converters:TimeSpanToWeekAndDayConverter x:Key="weekAndDayConverter"/> 
    </ResourceDictionary> 
</phone:PhoneApplicationPage.Resources> 

문제

는 항상이 예외를받을 수 있습니다.

또한 리소스 사전의 빌드 작업을 페이지에서 리소스로 (모든 특정 경로 구문 고려 사항을 사용하여) 행운을하지 않고 변경하려고했습니다. 누군가에게 아이디어가 있기를 바랍니다. 나는 생각하지 않는다 감사

답변

1
  1. 당신은 자원을 이동해야 - 당신이 응용 프로그램의 자원을 유지할 수 있습니다. 그것은 작동해야합니다.

  2. 전체 이름을 사용하여 사전을 참조해야합니다. 이 경우 "/의 AssemblyName, 구성 요소/Resources.xaml"

    출처 =

그렇지 않으면, 그것을 찾는 방법을 알 수 없습니다.

+0

두 가지 방법을 시도했지만 불행히도 작동하지 않았습니다. ( – Waleed

+1

예제에서 "AssemblyName"이라고 말하면 라이브러리에 사용중인 실제 AssemblyName을 지정해야합니다. 또한 형식을 올바르게 표시했는지 확인하십시오 리소스 파일의 페이지에서 속성으로. –

+0

고마워 친구, 전 정규 구문을 사용하여 페이지 작업을 만들었지 만 작동하지 않았다, 정말 혼란 스러웠다! 이상한 !! – Waleed