2012-01-19 8 views
1

저는 최근에 MS Prism을 사용하여 새 프로젝트를 시작했습니다. 내 UI 모듈 중 하나에, 나는 그래서 그것을 할이 코드를 썼다 .. 내가 응용 프로그램의 리소스 사전에 추가 할 필요가 리소스 파일을 내 리소스 파일에서'System.Windows.Setter'를 초기화하면 예외가 발생했습니다.

uri = new Uri(string.Format(@"pack://application:,,,/{0};component/{1}", 
          "namespacename", 
          "Resources.xaml")); 
       Application.Current.Resources.MergedDictionaries 
        .Add(new ResourceDictionary 
        { 
         Source = uri, 
        }); 

, 나는 DataTemplate을위한 세터를 가지고있는 그것은 다음과 같습니다

<DataTemplate.Triggers> 
     <DataTrigger Binding="{Binding State}" Value="Modified"> 
      <Setter TargetName="img" Property="Source" Value="../Images/ICO/Modify.ico"/> 
     </DataTrigger> 
     <DataTrigger Binding="{Binding State}" Value="Added"> 
      <Setter TargetName="img" Property="Source" Value="../Images/ICO/Add.ico" /> 
     </DataTrigger> 
    </DataTemplate.Triggers> 

문제가 발생로드 리소스 파일에 "예외가 발생했습니다 'System.Windows.Setter'의 초기화를." 하지만이 설정기를 제거하면 올바르게 작동합니다. 아이디어가 있으십니까?

답변

0

메신저 테스트가 필요합니다. 그러나 이미지 경로를 절대 경로로 변경해보십시오 : pack://application:,,,/{0};component/Images/ICO/Modify.ico

+0

고맙지 만, 저에게는 효과가 없었습니다 .. – Poseidon

관련 문제