Dou*_*las 5 c# debugging internal visual-studio
这可能是在黑暗中拍摄的,但是,我如何在PresentationFramework.dll中的以下内部静态方法中设置断点?
System.Windows.Documents.TextEditorTyping._ShowCursor()
Run Code Online (Sandbox Code Playgroud)
我遇到了与Joe非常相似的情况,我使用TextBox控件和包含ItemsControl的Popup制作自定义自动完成文本框.当我将焦点放在文本框中并且弹出窗口显示为StaysOpen ="False",并键入一些字符时,鼠标指针将被隐藏(通过调用System.Windows.Documents.TextEditorTyping.HideCursor我相信).它通常在鼠标移动时重新显示,但是当它检查是否应该隐藏时,弹出窗口似乎会处理此事件,因此当您在窗口周围移动时,指针会保持隐藏状态.
有一个怪癖,在第一次按键时,指针消失然后立即重新出现,然后在第二次按键时,指针保持隐藏状态.这表明有些东西正在调用_ShowCursor(),我很想知道是什么.因此这篇文章,以及设置上述断点的愿望.我该如何设置断点?
关于我的实际问题,指针一旦移动就保持隐藏,我希望通过自己模拟StaysOpen ="False"而不阻止鼠标移动事件来解决它,或者自己触发鼠标移动事件以使指针重新出现.关于此的任何其他提示赞赏.
虽然你不能用库存框架(没有可用的调试符号)来做这件事,你可以使用Reflector Pro获得这种技巧:http://www.red-gate.com/messageboard/viewforum.php? f = 109
Reflector Pro会将WPF程序集反汇编成.cs源文件,并动态生成它自己的调试PDB - 然后通过Presentation Framework程序集单步执行Visual Studio(并设置断点)
祝好运!
| 归档时间: |
|
| 查看次数: |
3761 次 |
| 最近记录: |