在Windows.Forms中,我无法重现与在Vista / 7 Aero中看到的完全相同的TextBox边框。我得到的只是一个灰色矩形,而是略微凹陷的灰色/蓝色3D边框。我尝试了以下方法但没有成功:
此问题已在此处讨论,但没有解决方案:http://social.msdn.microsoft.com/Forums/hu-HU/winforms/thread/46e66852-b52e-420d-8fe0-b717f86ecb18
看起来这个问题没有明显的解决方案。 有谁知道如何绘制与Aero完全相同的边框?
答案 0 :(得分:1)
这可能不会发生在你身上。
我认为 VisualStyleRenderer
,包括TextBoxRenderer
,更适合XP主题。
即使Control.DrawToBitmap(...)
函数神奇也会与屏幕上显示的版本不同。
我没有这方面的规范答案,但这很可能是微软继续使用WPF并将这些视觉主题遗留下来的WinForm控件的结果。
这个问题的唯一答案是使用WPF或使用像DevExpress这样的第三方系统(支持自定义主题),如果你需要“主题化”所有控件。