Tworzę właśnie prostą kontrolkę, która dziedziczy po klasie UserControl.
Założenie mam takie, że rozmiar mojej kontrolki określany będzie tylko raz - w konstruktorze. Po stworzeniu kontrolki nie będzie już można zmienić jej wielkości. W związku z tym muszę w jakiś sposób przesłonić pola Size, Width, oraz Height z klasy dziedziczonej, tak aby użytkownik nie miał możliwości późniejszej zmiany tych parametrów.
Póki co poradziłem sobie w ten sposób:
public class TestControl : UserControl
{
public new Size Size
{
get { return base.Size; }
}
public new int Width
{
get { return base.Width; }
}
public new int Height
{
get { return base.Height; }
}
// Konstruktor
public TestControl(int Size)
{
base.Size = new Size(Size, Size);
}
public void ChangeSize(int Size)
{
base.Size = new Size(Size, Size);
}
}
Co o tym sądzicie - czy taki zapis jest poprawny? (ciągłe odwoływanie się do base)
Czy może macie inne sugestie?