2011-03-01 3 views
0

Panel을 사용해도 객체가 ListBoxItem입니다.WPF - IsInitialized를 Property Trigger로 사용하면 실패합니다.

이 오류 메시지는 Property can not be null on Trigger., InvalidOperationException 내에 있습니다. 내가 컨트롤이 렌더링 될 때마다 화재 싶지 않기 때문에, 내가 Loaded 사용할 수 없습니다

<Trigger Property="IsInitialized" Value="true"> 
    <Setter TargetName="MyPanel" Property="Background" Value="AliceBlue"> 
    </Setter> 
</Trigger> 

참고 :

여기 트리거입니다. 그냥 초기에.

이 속성은 존재합니다 ... 왜 작동하지 않습니까?

답변

0

IsInitialized 속성이 Dependency Property이 아니기 때문입니다. 트리거는 종속성 속성에서만 사용할 수 있습니다.

하지만 문제는 왜 그런 방아쇠가 필요한가요? MyPanel에 직접적으로 Background 속성을 지정하거나`ListBoxItem '스타일로 지정하면 동일한 효과를 얻을 수 있기 때문입니다.

+0

응답 해 주셔서 감사합니다. 사실, 내 질문에 다른해야한다고 생각 ... 나는 또 다른 질문을 열 필요가 있을지 궁금 ... ObservableCollection 및 ListBox 그것에 묶여있다. IsSelected에 트리거를 설정 했으므로 항목을 선택하면 파란색으로 변합니다. 뭔가 재미있는 일이지만, 항목을 직접 변경하면 (List [1] = something과 같이). 다른 항목을 클릭해도 계속 선택됩니다. 왜 그런가요? –

+0

@Conrad - 당신은 환영합니다 :) 당신의 두 번째 질문에 관해서는, 당신은 그것을위한 또 다른 포스트를 만드는 것이 낫습니다. –

관련 문제