You cannot use class hierarchies. Labeland CommonControlboth inherit from Control, but are separate sibling classes, and therefore you cannot drop them to each other, not even through your parents.
Or simpler: just by creating an object Label, it will always be an object Label, even if you use it to use it as Control. By dropping it on CommonControl, you completely change your type, which is illegal in C #.
. , , , . :
public interface ICommonControl : System.Xml.Serialization.IXmlSerializable {
}
[Serializable]
public class MyLabel : System.Windows.Forms.Label, ICommonControl {
}
ctrl MyLabel. Label , . , ICommonControl.
, , , .