2009-11-19 35 views
0

我正在用C#和.Net Compact Framework 2.0 SP2开发Windows Mobile WinForm应用程序。Windows Mobile:如何隐藏自定义控件的Size属性

我有一个控制,从System.Windows.Form.Control我想要使私人大小属性inhertit。我怎样才能做到这一点?

我已经试过这样:

new private Size; 

不过,这并不编译。

有什么想法?

回答

2

只需创建在你的控制同名大小的公共属性:

public Size Size 
{ 
    get { return base.Size; } 
    set { base.Size = value; } 
} 

然后,你可以做一些事情的二传手,以防止你的控件的大小被改变的大小不匹配您的图片。

1

这将工作:

new private Size Size 
    { 
     get { return Size; } 
     set { Size = value; } 
    } 

但是躲在不建议Size属性。您基本上违反了Control所期望的契约,当其他类尝试与其交互时,您可能会收到运行时异常。

+0

也许做私人财产的集合部分可以解决你已经暴露的问题。我的控件包含一个图像,我希望控件具有相同的图像大小,并且不能更改其大小。 – VansFannel 2009-11-19 11:46:13