在C#中限制表单类属性的访问修饰符

时间:2018-11-25 18:14:32

标签: c# winforms inheritance properties access-modifiers

我创建了一个继承 Windows.FORM DLL类,我想限制其属性 访问修饰符例如将Size(width-height)和FormBorderStyle设置为私有

因此在另一个大会上无法访问。我该怎么办,并且与之相关? 也许使用抽象类?谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

不要这样做。

access modifiers用于指导开发人员。它们绝不会提供任何防止使用的保护。

即使它们是私有的,但想要访问它们的开发人员也能够这样做,并且弄乱了默认框架会导致严重的问题。


或者...

如果您的表单是一个完全独立的功能或特性,则对表单进行包装。

例如:

//the wrapper
public class PropertyPages : IPropertyPages
{
     //your wrapped form...
     private YourForm _propertyForm = new YourForm(); 

     //a public show, but the form itself remain inaccessible.
     public void Show()
     {
         _propertyForm.Show();
     }
}