我想创建一个TabControl的自定义版本,这样当添加新的TabPage时,我可以确保执行一些自定义处理。
问题是我如何覆盖TabPages.Add()方法来实现这个目标?
感谢, 理查德
答案 0 :(得分:2)
不幸的是,您无法覆盖Add()
类的TabPageCollection
方法。您可以尝试订阅TabControl.ControlAdded
事件,希望在添加TabPage
(基本上也是Control
)时将其引发。
答案 1 :(得分:0)
您可以创建继承自TabControl的自定义版本,并且具有public new void Add(string)
方法。但是如果有人将你的控制权交还给TabControl,它们就会绕过你的逻辑。您可以尝试创建一个继承自System.Windows.Forms.Control的自定义控件,并公开私有TabControl的所有方法,根据需要修改Add方法。这会给你更多的控制权。