【发布时间】:2012-10-02 08:25:49
【问题描述】:
我有一个带有TextBox 的表单。每次文本更改时,我都会使用 TextChanged 事件创建 PDF 文件并将其加载到同一表单中的 AxAcroPDF-Object 中。这工作正常,但随后TextBox 失去焦点,并且由于某种原因,加载文件后textBox.Focus() 不起作用。
有没有人知道我可以如何安排您在刷新 PDF 的同时继续打字?
编辑:
我有另一个想法,我创建了一个单独的线程来更新 PDF,并且在 TextChanged-event 中我只设置了一个标志。但是现在我遇到了一个奇怪的错误
Unable to cast COM object of type 'System.__ComObject' to interface type 'AcroPDFLib.IAcroAXDocShim'.
【问题讨论】:
-
我认为您应该在设计时将表单中的 .SelectedControl 设置为 TextBox 实例。您不能在表单加载器中设置焦点控件(如果我没记错的话)。抱歉,我不确定属性名称,可能是 .FocusedControl 之类的。
-
文本框控件是否托管在组框、面板或任何其他容器中?
-
如何加载文件?寻找文件完成加载时触发的某种事件,然后才设置焦点。否则,请尝试为此使用计时器。
-
@TheBlastOne: 找不到你想要的属性,form.controls 没有焦点。像这样
-
@Danilo Vulović:不,简单的测试表单,只有一个按钮、一个文本框和 pdf-viewer