我遇到了一个奇怪的问题,似乎不得不追捕到以下根本原因。 环境C#(。NET 2.0):
我的代码正在使用某个供应商的框架,并且一次打开模式对话框。似乎框架正在过滤Application的“Enter”Keypresses(可能通过实现IMessageFilter)。因此,通过按“确定”按钮关闭我的对话会导致奇怪的行为 - 通过鼠标单击“确定”关闭工作正常。 遗憾的是,更改框架的代码不是一种选择。所以我想禁用框架在我的对话框中注意“Enter”(可能是“ESC”)按键。有谁知道如何做到这一点?
修改
我“解决了”这个问题。请参阅下面的接受答案。
答案 0 :(得分:1)
我“解决了”这个问题。这是将来参考的解决方案:将Form(在模态对话框中创建)FormBorderStyle属性设置为FormBorderStyle.FixedDialog解决了该问题。是的,这是Cargo-Cult-Programming的典型案例,但经过全面测试后,修复工作可靠。
答案 1 :(得分:-1)
创建一个按下输入键的javascript文件,让它在你的模态上执行ok事件。只需确保您的javascript高于应用程序中的所有其他JavaScript,它应首先触发。