2016-06-14 2 views
0

내 winfom 프로그램에서 키를 눌렀을 때 탭 페이지를 변경하는 기능이 있습니다.tabcontrol 페이지가 업데이트되지 않았습니다.

tabcontrol indexchanged에서 일부 매개 변수를 확인하고 올바르지 않으면 첫 번째 탭으로 탭 페이지를 변경합니다.

마우스로 페이지를 클릭하면 탭 페이지가 올바른 내용의 첫 번째 탭으로 변경됩니다.

키를 클릭하고 "tcOrdre.SelectedTab = tpOrdre;"코드를 실행하면 탭을 첫 번째 탭으로 다시 변경하지만 여전히 선택한 탭의 내용을 표시합니다.

의 SelectedIndexChanged

에서이 코드 사용하는 것이다 ("스칼 vælges EN 질서 FORST 데르")

MessageBox.Show 단계; // 메시지 상자 표시

tcOrdre.SelectedTab = tpOrdreListe; // 첫번째

로 변경 탭 내가 실행할 때 다음 호출되는 SelectIndexChanged 마우스를 사용하는 경우 :

tcOrdre.SelectedTab = tpOrdreListe; // 먼저 탭으로 변경합니다.

SelectedIndexChanged 함수가 다시 호출되고 내용이 괜찮습니다.

그러나 키를 사용하여 인덱스를 변경하면 SelectedIndexChanged가 다시 호출되지 않고 내용이 변경되지 않습니다. 상단의 탭만 첫 번째 탭으로 변경됩니다.

누군가가 나를 도울 수 있기를 바랍니다.

답변

0

해결책을 찾았습니다. 내가해야 할 일은이 행을 호출하는 것입니다.

this.BeginInvoke (새 작업 (() => tcOrdre.SelectTab (0)));

및 tcOrdre.SelectedTab = tpOrdreListe가 아닙니다.

그리고 모든 것이 잘 작동합니다.

관련 문제