소켓 연결을 통해 C++ MFC 응용 프로그램과 통신하는 WPF 응용 프로그램이 있습니다. 사용자가 C++ 응용 프로그램에서 특정 단추를 누르면 새 WPF 창이 표시됩니다. 키보드 포커스가되지 않습니다 이러한 방식으로 표시됩니다 특정 기계에열린 창을 열 때 포커스가 적용되도록합니다.
var window = new Window();
window.Topmost = true;
window.Show();
window.Activate();
window.Topmost = false;
, 첫 번째 창 (만 첫 번째 창) : 여기
는 WPF 창을 실행하기 위해 호출되는 코드입니다 . 그것은 C++ 응용 프로그램 앞에 있지만 C++ 응용 프로그램에는 여전히 키보드 포커스가 있습니다. 매번 키보드 포커스를 가져 오도록 WPF 창을 강제로 수행 할 수있는 다른 방법이 있습니까?
'window.Focus()'가 처리해야합니다. – evanmcdonnal
'window.Focus()'는 매번 false를 반환합니다. – battmanz
'window.Focus()'는 해당 윈도우에 포커스가 있는지 여부를 나타내는 부울 값을 반환합니다. 내 생각 엔'Focus()'를 호출 할 때 윈도우에 포커스가 없다는 것입니다. 그래서 항상 false가 될 것입니다. 윈도우 포커스를 주려면'window.Focus() = true;'를 사용하십시오. –