在 Winform 的 MonthCalendar 控件中,当我不想显示“今天”标签时,我在日历的顶部和底部看到奇怪的白色边框。
有办法禁用这个吗?
最佳答案
我想我也看到了这一点。日历的大小由名为 GetMinReqRect() 的私有(private)方法计算。当 ShowToday 关闭时,它返回的尺寸太大。该方法在引用源中的注释是:
在内部用于获取显示 MonthCalendar 所需的最小大小。这是必需的,因为如果 showToday 设置为 false,NativeMethods.MCM_GETMINREQRECT 将返回不正确的值。
在我看来,Windows 小组中的某个人修复了该错误,但忘记告诉 WF 小组。毫不奇怪,WF 组很难找到。
我没有看到明显的解决方法,该方法是私有(private)的。 SetBoundsCore() 应用大小,没有办法绕过它。您可以将错误发布到 connect.microsoft.com,但您会得到“发布到论坛以获得帮助”的拒绝。
关于c# - 当 ShowToday 为 False 时,MonthCalendar 控件有额外边框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1976616/