TextBox의 Focus()가 작동하지 않습니다.
문제
나는 TextBox
그 안에.텍스트가 바뀔 때마다 나는 TextChanged
PDF 파일을 생성하여 로드하는 이벤트 AxAcroPDF
-동일한 형태의 개체.이것은 잘 작동하지만, 그 다음에는 TextBox
집중력을 잃고 어떤 이유로 textBox.Focus()
파일을 로드한 후 작동하지 않습니다.
PDF를 새로 고치는 동안 계속 입력할 수 있도록 어떻게 준비할 수 있는지 아는 사람이 있나요?
편집하다:
다른 아이디어가 있어서 PDF를 업데이트하는 별도의 스레드를 만들었고 TextChanged
-이벤트 저는 플래그만 설정했습니다.그런데 지금 이상한 오류가 발생하고 있어요
Unable to cast COM object of type 'System.__ComObject' to interface type 'AcroPDFLib.IAcroAXDocShim'.
해결책 2
내 자신이 너무 부끄럽습니다. 정말 정말 더러운 해킹을 찾았지만 작동합니다...나는 다음을 수행했습니다.
MessageBox에 텍스트를 쓸 때 TextChange-Event에서 PDF를 다시 작성합니다.같은 방법으로 포커스가 있는 컨트롤을 저장합니다(PDF 개체에서 LoadFile을 호출할 때 이 컨트롤은 여전히 포커스를 잃습니다).이제 더러운 작업이 시작됩니다.변수에 저장된 컨트롤에 지속적으로 포커스를 설정하는 스레드를 구현했습니다.TextBox의 Leave-Event에서 다른 컨트롤이 차단되지 않도록 변수를 재설정했습니다.
나도 알고 있는 정말 더러운 해킹이지만 이제는 내 양식으로 PDF를 즉시 "편집"할 수 있습니다. 이는 정말 멋진 일입니다. ;)
모든 도움에 감사드립니다!
다른 팁
이거 한번 해봐:
textBox.Select();
textBox.Focus();
.Focus() 및 .Select()가 작동하지 않아 Jquery를 사용했는데 완벽하게 작동합니다.
$(document).ready(function () {
setTimeout(function () {
$(".contentWrapper input")[0].focus();
}, 100);
});