Lets say we have a derivided class \"SerializableLabel\" from the base class \"System.Windows.Controls.
[XmlRoot(\"SerializableLabel\")]
public class Seriali
If you want to ignore properties during serialization, you can use Xml Attribute overrides.
See this question for an intro to attribute overrides.
You could write a custom serializer with IXmlSerializable, but you would create a situation where your serialization does not reconstitute the class properly. Let's say someone the BackColor on your SerializableLabel, that would not come through the serialization process properly.
One possible root of the above problems (including the one pointed out by JP) is that your class hierarchy tries to violate the Liskov Substitution Principle. In simpler terms, the derived class tries not to do what the base class already does. In still other words, you're trying to create a derived label that is not substitutable for the base label.
The most effective remedy here may involve decoupling the two things that SerializableLabel is tries to do, (a) UI-related functions and (b) storing serializable data, and having them in different classes.
In your text.xml file, you might want to rename the root to be SerializableLabel, not SerializableLable (small typo)