在多个项目之间使用可继承的形式

本文关键字:可继承 项目 之间 | 更新日期: 2023-09-27 18:31:08

我创建了一个继承自system.windows.forms.form的windows玻璃表单,然后将其放置在类库项目中。

我现在想在多个其他窗口窗体项目中使用此窗体。 我该怎么做?

我已经创建了对类库的引用,但我不知道如何实际获取表单。

在多个项目之间使用可继承的形式

听起来您希望

项目中的表单从我的玻璃形式派生出来。

确保你的 GlassForm 类是公开的;例如。

public class GlassForm : System.Windows.Forms.Form
{
}

现在您已经验证了它是公开的,对于您希望从 GlassForm 继承的任何形式,请将继承的类从 Form 更改为 GlassForm。

public class MyForm : Form
{
}

public class MyForm : YourClassLibraryNamespace.GlassForm
{
}

您的窗体现在将派生自 GlassForm,并且也将在 WinForm 设计器中充当此角色。如果你只是想在调用意义上在你的项目中使用该表单,你可以按照 Bob Horn 所说的去做。

using YourClassLibraryNamespace;
public class MyForm : Form
{
    public void ShowGlassFormModal() {
        using (GlassForm form = new GlassForm()) {
            form.ShowDialog();
        }
    }
    public void ShowGlassForm() {
        new GlassForm().Show();
    }
}

如果你已经有了你的参考,你需要做的就是使用它。将表单的命名空间添加到类文件中:

using NamespaceOfWindowsGlassForm;

然后使用以下表单:

WindowsGlassForm form = new WindowsGlassForm();