在使用文本编辑器时无法向聚焦的文本框中写入文本

3
我有一个关于文本框聚焦的问题。
我为我的应用程序设置了一个全局快捷键,可以将焦点设置到应用程序的文本框上。
如果我使用这个快捷键,我会这样做:
this(Window).Activate()

wantedTextbox.Focus()

Keyboard.Focus(wantedTextbox) // just for testing

所以它可以与例如互联网浏览器一起工作,但它不会与任何文本编辑器一起工作。我在文本框上获得焦点+激活窗口,但如果我写,我会写入记事本/VS... 如果有人能够解决我的问题,我将非常高兴。

刚刚尝试复制,但对我来说一切都正常... 但是 Keyboard.Focus 很重要,因为 WPF 有逻辑和输入焦点! - fixagon
嗯...我今天开始运行程序了。它也很好地工作了。我不知道为什么。唯一的区别是,当我遇到问题时,我使用了SharpDevelop。现在我在VS2010中重新打开了项目,它可以工作了! - Clemens Lackner
2个回答

0

好的,我解决了这个问题。 我使用 SharpDevelop + C# VS2010Express 执行了应用程序。 SharpDevelop 编译的 .exe 文件无法工作。 而 VS2010 编译的文件可以工作! 我不知道为什么,但这解决了我的问题。


0

我曾经在一个WPF窗口应用程序中遇到过类似的问题。尝试在窗口加载后执行wantedTextbox.Focus()命令。在我的情况下,我只是将代码从构造函数移动到了窗口的Loaded事件处理程序中,该事件处理程序位于TextBox所在的位置。这对我有用。试试看,也许对你也有用。


看起来窗口已经加载,只是失去了焦点。 - fixagon
尝试在 wantedTextbox.Focus() 之前添加 Application.Current.MainWindow.Focus() - Debasis
我要试一下。谢谢你的帮助! - Clemens Lackner

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接