C# 获取自定义TextBox控件的父级
创建扩展TextBox的自定义控件时,在OnCreateControl()覆盖内,父控件为null。扩展其他控件(如Button)时,它不为null。我正在检查以下代码,并将其添加到表单和各种容器控件中:C# 获取自定义TextBox控件的父级,c#,controls,C#,Controls,创建扩展TextBox的自定义控件时,在OnCreateControl()覆盖内,父控件为null。扩展其他控件(如Button)时,它不为null。我正在检查以下代码,并将其添加到表单和各种容器控件中: protected override void OnCreateControl() { base.OnCreateControl(); MessageBox.Show((Parent == null).ToString()); //True when extending Tex
protected override void OnCreateControl()
{
base.OnCreateControl();
MessageBox.Show((Parent == null).ToString()); //True when extending TextBox, False when extending Button
}
当控件添加到另一个控件时,如何检索该控件的父控件,以确保无论扩展哪个控件,相同的代码都能正常工作?我认为重写OnParentChanged更合适。这是可行的。不幸的是,文本框控件在绘制方面似乎与其他控件的行为非常不同,因此我可能会从一开始就略知一二。你的问题从来没有提到绘画是一个问题。文本框不使用绘画事件。至少我学会了使用OnParentChanged。像修改任何其他控件一样,如何修改自定义文本框的外观?