7
타이머를 시작하는 userControl이 있습니다. XAML 디자이너가 일부 백 엔드 데이터베이스 항목에 연결되는 해당 코드를 호출하려고합니다. 디자인 화면에서 계속 예외가 발생하지 않습니다.WPF 사용자 정의 컨트롤에서 디자인 타임 예외를 throw합니다.
디자이너가 코드를 실행하는 것을 어떻게 막을 수 있습니까?
타이머를 시작하는 userControl이 있습니다. XAML 디자이너가 일부 백 엔드 데이터베이스 항목에 연결되는 해당 코드를 호출하려고합니다. 디자인 화면에서 계속 예외가 발생하지 않습니다.WPF 사용자 정의 컨트롤에서 디자인 타임 예외를 throw합니다.
디자이너가 코드를 실행하는 것을 어떻게 막을 수 있습니까?
디자이너에서로드 할 때 XAML 디자이너가 UserControl의 생성자를 호출합니다. 이를 피하기 위해 다음과 같이 if 조건을 UserControl 생성자에 배치 할 수 있습니다.
if (System.ComponentModel.DesignMode) return;
끝내 주셔서 감사합니다. – Jay
그래서 그 방법은 ... – Pyritie
이 방법으로 확인할 수도 있습니다. If (! System.ComponenyModel.DesignProperties.GetIsInDesignMode (this)) {// 여기에 생성자 코드를 작성하십시오
} –