日期:2014-05-18  浏览次数:21035 次

请问在C#中,如何隐藏虚线框
在win7中, 我发现系统的控件获得焦点后都是无虚线框的, 只有当按下 alt键, 控件才会有虚线框
可是在C#中开发的程序, 运行后就会有虚线框, 请问要如何才能做到保持和系统一致?

------解决方案--------------------
把焦点移到别的控件上
------解决方案--------------------
如果你使用了win7主题,并且双击启动(而不是按ctrl+f5),同时你的系统设置为当按下alt,隐藏下划线,应该是没有虚框的。
这个问题在Windows 2000时代出现在VB6.0的程序中,解决办法是在Form_load强制发送一个系统消息,去掉虚框。发送的消息记不得了,不过你可以查下,方法是,打开spy++,拦截窗口消息。同时打开显示属性对话框,在系统效果中清除“当按下alt,隐藏下划线”复选框,点应用,再选中“当按下alt,隐藏下划线”点应用,看你的spy++会收到什么。
------解决方案--------------------
楼上正解。