【发布时间】:2019-09-18 10:58:47
【问题描述】:
我是学习 C# 的新手,目前正在学习使用类图使用 Windows 窗体/类。
我想要做的是从我创建的一个类中访问 Windows 窗体组件,例如 InitializeComponent()
我试过了
public partial class Class1: Form1
{
public Class1()
{InitializeComponent();}
除非我去更改设计器设置以使其公开,否则它不起作用。这一切都很好,适用于我创建的其他 Windows 窗体组件,但是当我最后运行程序时,我只得到一个空白窗体,其中没有任何内容。
使用Class Diagram,我认为它应该显示为所附照片,所有方法都显示在类图的“方法”部分下
有什么想法吗?
干杯
【问题讨论】:
-
Form1中有任何控件吗?您在Class1中看不到这些控件吗?你如何加载Class1?Form1的构造函数可能已经在调用InitializeComponent。您无需在Class1Constructor 中再次调用它。 -
Winforms 设计器默认采用正确的方式,类的实现细节应该是私有的。如果您需要向其他代码公开某些内容,则添加一个公共属性。或者实现一个接口,你忘了在 Class1 声明中添加 ISubject。如果您愿意,您可以打破 OOP 规则,使用设计器将控件的 Modifiers 属性从 Private 更改为 Public。将 InitializeComponent() 公开是根本错误的,它只能从构造函数中正确调用。
标签: c# windows-forms-designer class-diagram