Windows Mobile: how to hide Size property on a Custom Control
I'm developing a Windows Mobile WinForm app with C# and .Net Compact Framework 2.0 SP2.
I have a control that inhertit from System.Windows.Form.Control that I want to make private Size property. How can I do that?
I've tried this:
new pr开发者_JAVA技巧ivate Size;
But it doesn't compile.
Any idea?
Just create a public property with the same name Size in your control:
public Size Size
{
get { return base.Size; }
set { base.Size = value; }
}
Then you can do something in the setter to prevent your control size from being changed to a size that doesn't match your image.
This will work:
new private Size Size
{
get { return Size; }
set { Size = value; }
}
However hiding the Size property isn't recommended. You basically break the contract that is expected from a Control and you may get runtime exceptions when other classes are trying to interact with it.
精彩评论