我需要重写Tabcontrol GetTabRect。
protected override Rectangle GetTabRect(int index)
{...}
我收到此错误
错误1'TabControl.GetTabRect(int)':
在以下情况下无法更改访问修饰符
覆盖“公共”继承成员
'System.Windows.Forms.TabControl.GetTabRect(int)'
Error2'TabControl.GetTabRect(int)':
无法覆盖继承的成员
'System.Windows.Forms.TabControl.GetTabRect(int)'
因为它没有标记为虚拟,
抽象或覆盖
我怎样才能做到这一点?
编辑
如果我使用public:
TabControl.GetTabRect(int)': cannot override inherited member 'System.Windows.Forms.TabControl.GetTabRect(int)' because it is not marked virtual, abstract, or override
最佳答案
TabControl.GetTabRect()
方法是公共的,它不是虚拟的,因此您可能需要针对要解决的问题找到其他解决方案。即使使用new
关键字覆盖此方法,基类也不会调用您的实现,因为它不是虚函数。
您可以尝试处理DrawItem
事件并自己呈现选项卡-可能需要做更多的工作,但是它使您可以控制呈现选项卡的方式,然后可以使用所需的任何边界矩形。
您要做什么,需要重写的GetTabRect()
方法?
关于c# - 帮助覆盖C#.NET,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5492686/