2012-01-14 3 views
0

오른쪽에 시나리오 충돌 :작품, 그래서 여기에 맥

나는 캔버스

에서 나는 "DiaryControl"라는 UserControl을 만들었습니다

을 inherites "DiaryPage"라는 클래스를 만들었을 그 "DiaryPage"요소를 포함합니다. 그래서 페이지의 높이, 폭,이 같은 모든 데이터 바인딩은 다음과 같습니다

에서 : 지금

Width="{Binding DataContext.Info.Booktype, ConverterParameter=CoverWidth, Converter={StaticResource BookTypeToDimentionsConverter}, FallbackValue=490, RelativeSource={RelativeSource FindAncestor, AncestorLevel=1, AncestorType=UserControl}}" 

, 그것은 실버 5하지만 맥에서 실행되는 동일한 코드는 다음과 같은 예외를 생산을 실행, PC에서 완벽하게 작동 System.Windows.Application.LoadComponent (개체 구성 요소, Uri resourceLocator)
Life.Views.Book.Framework.DiaryControl.InitializeComponent()
Life.Views.Book.Framework.DiaryControl..ctor() 메서드를 찾을 수 없습니다. : 'Void System.Windows.FrameworkElement.add_DataContextChanged (System.Windows.DependencyPropertyChangedEventHandler)'. System.Windows.Application.LoadComponent (개체 구성 요소, 열린 우리당 resourceLocator)에서
Life.Views.Book.Framework.DiaryControl.InitializeComponent()에서
Life.Views.Book.Framework.DiaryControl..ctor에서
() 지정된 바인딩 제약 조건과 일치하는 'Life.Views.Book.Framework.DiaryPageControl'유형의 생성자 호출시 예외가 발생했습니다. 지정된 바인딩 제약 조건과 일치하는 'Life.Views.Book.Framework.DiaryPageControl'유형의 생성자 호출이 예외를 발생 시켰습니다. [선 : 327 위치 : 28]

[선 327] 너비에 해당

어떤 아이디어가 위에 지정된 바인딩? 내 DiaryPage 클래스에서

내가이 datacontextchanged 리스너과 같이 첨부 :

DataContextChanged += new DependencyPropertyChangedEventHandler(DiaryPageControl_DataContextChanged); 

void DiaryPageControl_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e) 
    { 
     if(DataContext != null && DataContext.GetType()== typeof(Page)) 
      LoadContent(); 
    } 

내가 말한 바와 같이, 하나 (5 PC의 테스트) 창에 매력을 작동하지만 잘 (Mac에서 예외가 발생하는 나는 시도했다)

답변

0

Silverlight 은 Mac 및 Windows PC에서 정확히 동일한 방식으로 작동해야한다. 버그 같은데. Microsoft Connect 사이트에서 신고 할 수 있습니다. 귀하의 즉각적인 문제를 해결하기 위해 당신을 위해 일하지 않는 프레임 워크의 부분을 찾아 그것을 피하기 위해 약간의 탐험적인 작업을해야 할 것입니다!

또 다른 한 가지 ... Mac에 최신 Silverlight 버전이 설치되어 있는지 확인하십시오. 여기에 비교적 새로운 프레임 워크 기능이 사용됩니다.

+0

내가 베타 런타임을 테스트 한 Mac에, "업데이트 된 버전이 다르므로 업데이트가 필요합니다."라는 이유로 업데이트 된 적이 없다고 생각합니다. – sLedgem

+0

@sLedgem -이 경우 HTML의 object 태그도 확인해야합니다. 실버 라이트 플러그인의 최소 버전을 지정할 수 있습니다. –