当前位置:  开发笔记 > 编程语言 > 正文

为什么我的WPF文本框"有点"只读?

如何解决《为什么我的WPF文本框"有点"只读?》经验,为你挑选了1个好方法。

我在WPF中有一个文本框,它是列表框的数据窗口的一部分.在那个文本框中我可以删除,退格,空格键,但我不能输入新的单词,字母或数字.我可以从记事本粘贴.

我在这里错过了什么?

 
            
                
                    
                        
                            
                            
                        

                        
                        
                    
                
            
        

小智.. 45

我遇到了一个与此非常相似的问题.做了一点研究后,我发现MSDN中列出了类似的问题:

http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c68d5f3c-c8cc-427d-82e3-6135d075a304/

根据帖子的答案,问题与WPF和WinForms有两种截然不同的处理文本输入的方式.幸运的是,上面列出的帖子提供了以下解决方案:

启动窗口时,使用ElementHost.EnableModelessKeyboardInterop(window1).请注意,这是一个静态方法 - 您不必实例化ElementHost类.

例如,

Window window1 = new Window();
ElementHost.EnableModelessKeyboardInterop(window1);
window1.Show();

这解决了我的问题.希望这可以帮助.



1> 小智..:

我遇到了一个与此非常相似的问题.做了一点研究后,我发现MSDN中列出了类似的问题:

http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c68d5f3c-c8cc-427d-82e3-6135d075a304/

根据帖子的答案,问题与WPF和WinForms有两种截然不同的处理文本输入的方式.幸运的是,上面列出的帖子提供了以下解决方案:

启动窗口时,使用ElementHost.EnableModelessKeyboardInterop(window1).请注意,这是一个静态方法 - 您不必实例化ElementHost类.

例如,

Window window1 = new Window();
ElementHost.EnableModelessKeyboardInterop(window1);
window1.Show();

这解决了我的问题.希望这可以帮助.


只是提到当你有WinForms/MFC调用WPF并使用`ElementHost.EnableModelessKeyboardInterop(wpfwindow)`时可能会出现的另一个问题.如果WPF窗口使用`Window.Show()`打开另一个窗口,那么也会出现文本框问题 - 每个窗口都需要启用无模式互操作.请注意,`Window.ShowDialog()`不会导致问题.
推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有