0

system.windows.forms.formから継承するWindowsガラスフォームを作成し、それをクラスライブラリプロジェクトに配置しました。

このフォームを他の複数のWindowsフォームプロジェクトで使用したいと思います。どうすればよいですか?

クラスライブラリへの参照を作成しましたが、実際にフォームを取得する方法がわかりません。

4

2 に答える 2

2

あなたがすでにあなたの参照を持っているならば、あなたがする必要があるのはそれを使うことだけです。フォームの名前空間をクラスファイルに追加します。

using NamespaceOfWindowsGlassForm;

次に、次のフォームを使用します。

WindowsGlassForm form = new WindowsGlassForm();
于 2012-04-16T01:59:33.447 に答える
2

プロジェクトのフォームを、私が言えることからGlassフォームから派生させたいようです。

GlassFormクラスがパブリックであることを確認してください。例えば。

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

パブリックであることを確認したので、GlassFormから継承するフォームについて、継承されたクラスをFormからGlassFormに変更します。例えば。

public class MyForm : Form
{
}

public class MyForm : YourClassLibraryNamespace.GlassForm
{
}

これで、フォームはGlassFormから派生し、WinFormデザイナーでもそのように機能します。プロジェクトでフォームを呼び出しの意味で使用したいという意味であれば、BobHornが述べたことを実行できます。

using YourClassLibraryNamespace;

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

    public void ShowGlassForm() {
        new GlassForm().Show();
    }
}
于 2012-04-16T02:05:24.280 に答える