2011-08-10 7 views
1

을 입력하고 일부 컨트롤을 사용합니다. 첫 번째 컨트롤에 Combobox가 있습니다. MainTab에 대해 SelectionChange를 작성했습니다. 콤보 상자에 넣었을 때 발생합니다. 선택 변경 이벤트를 에 추가하면 안됩니다.하지만 콤보 상자에 선택 변경 사항을 추가하고 e.erouted = true로 설정하면 기본 탭 선택 항목이 변경됩니다. 변경된 사항은 해고되지 않습니다. what 다른 컨트롤을 선택한 항목을 변경하면 maintab selectionchange가 실행되지 않도록 할 수 있습니까?wpf- 원하지 않는 선택 변경 내 기본 탭에

답변

2

:이 경우

는 같은 것을 의미 할 것입니다 컨트롤 (ComboBox)에서 부모 컨트롤 (TabControl)

+0

감사합니다. 친애하는 shebin.Its 더 나은 아이디어는 원본을 사용하는 것입니다. – AliRezza

+0

당신은 오신 것을 환영합니다. – Shebin

+1

그리고 ComboBox 이외의 개체를 포함하는 경우 다른 TabControl? 인스턴스 대 유형을 비교하는 것이 가장 좋습니다. – fatty

1

이 문제도 발생했으며 아직 원인이나 해결 방법을 찾지 못했습니다. 내 현재 (비록 간단하지만)이 해결 방법은 보낸 사람이 당신이 기대하는 개체를 확인하는 것입니다.

if (e.OriginalSource.GetType() != typeof(ComboBox)) 
    { 
     //do the code of main tab selection here.. 

    } 
+0

감사합니다 지방질,하지만 나는 그것을 실행하지 않을 sth하고 싶습니다. – AliRezza

-1

설정 아이로부터 버블 링에서 이벤트를 중지 true로 e.Handled 기본 탭 선택 변경 이벤트에서

if (sender != MainTab) 
    return; 
+0

문제는 모든 Combobox에 이벤트를 추가해야한다는 것입니다. 우리는 모든 Combobox에 추가 할 수 없습니다. (우리는 원하지 않습니다) – AliRezza