我正在用C#和.Net Compact Framework 2.0 SP2开发Windows Mobile WinForm应用程序。Windows Mobile:如何隐藏自定义控件的Size属性
我有一个控制,从System.Windows.Form.Control我想要使私人大小属性inhertit。我怎样才能做到这一点?
我已经试过这样:
new private Size;
不过,这并不编译。
有什么想法?
我正在用C#和.Net Compact Framework 2.0 SP2开发Windows Mobile WinForm应用程序。Windows Mobile:如何隐藏自定义控件的Size属性
我有一个控制,从System.Windows.Form.Control我想要使私人大小属性inhertit。我怎样才能做到这一点?
我已经试过这样:
new private Size;
不过,这并不编译。
有什么想法?
只需创建在你的控制同名大小的公共属性:
public Size Size
{
get { return base.Size; }
set { base.Size = value; }
}
然后,你可以做一些事情的二传手,以防止你的控件的大小被改变的大小不匹配您的图片。
这将工作:
new private Size Size
{
get { return Size; }
set { Size = value; }
}
但是躲在不建议Size属性。您基本上违反了Control所期望的契约,当其他类尝试与其交互时,您可能会收到运行时异常。
也许做私人财产的集合部分可以解决你已经暴露的问题。我的控件包含一个图像,我希望控件具有相同的图像大小,并且不能更改其大小。 – VansFannel 2009-11-19 11:46:13