これは宿題の一部だと言いたいのですが、コードを求めているわけではありません。仮想メソッドとインターフェイスを含む 2 つのサブクラスを持つ抽象基本クラスを作成する必要があります。すべてのクラスとインターフェイスを作成しましたが、GUI をテストするためのクラスの作成に行き詰まっています。サブクラスとインターフェイスを含むすべてのクラス ライブラリを参照しましたが、私の本の例では、PresentationGUI.cs という別のクラスがあります。フォームの前にクラスを作成しましたが、このクラスをフォームで「機能する」ように実装する方法がわかりません。プレゼンテーション クラスをスタートアップ プロジェクトとして設定しましたが、Windows フォームと通信させる方法がわかりません。デザイナーコード。この本では、プレゼンテーション クラスには、さまざまなクラスの名前空間への参照と共に Windows フォーム コードが生成されています。サブクラスの一部と一緒に、このプレゼンテーションクラス内で、私はこれを達成する方法に迷っています。本のコードは次のようになります (時間を節約するために短くしています)。
01 using System; //// I get an error if I type this in
02 using System.Drawing;
03 using System.Collections.Generic;
04 using System.ComponentModel;
05 using System.Windows.Forms;
06 using System.Data;
07 using ClubNamespace; //// to reference the subclasses
08 using IntermuralNamespace;
09
10 namespace PresentationGUI
11 {
12 public class PresentationGUI : System.Windows.Forms.Form
13 {
14 private Club aClub;
15 private Intermural aIntermural;
16 private System.Windows.Forms.GroupBox groupbox1;
17 private System.Windows.Forms.Label label1;
18 //// and other Windows.Forms object oriented buttons and so-forth
19
20 public PresentationGUI ()
21 {
22 Initialize Component ();
23 }
24 /// #Windows Designer Code to add controls
25 static void Main()
26 {
27 Application.Run(new PresentationGUI());
28 }
29 private void Presentation_Load(object sender, System.EventArgs e)
30 {
31 aClub = new Club ("ACM", "Jones", "Davis 203", "Tuesday");
32 aIntermural = new Intermural ("Winners", "Joe Smith", "Gym 3", "VolleyBall")
33 }
私の講師によると、フォームにコントロールを追加する前に、PresentationGUI クラスを作成してスタートアップとして設定すると、プライベート Systems.Windows.Forms.Label label1; が作成されます。クラス自体に、しかし私が自分のクラスを作成するときは起こりません。スタートアップ プロジェクトにした後、PresentationGUI クラスへの参照としてサブクラスを追加しました。インターフェイスも含めて、上記のコードでは省略しました (インターフェイスを使用していない本の正確なコードを使用しました)。これは、using System パーツを一番上に追加することと関係がありますか?それとも、コントロールを参照するためにプライベート Windows.Forms パーツを自分で追加する必要がありますか? または、PresentationGUI クラス ライブラリを作成するために必要な別の方法はありますか? Initialize Component() および Main() メソッドを使用してクラスを作成するにはどうすればよいですか? フォームデザインでこれを参照する必要がありますか? それとも、フォーム デザインの一部ですか? フォーム デザインの一部にするにはどうすればよいですか? すべての質問で申し訳ありませんが、答えはおそらく簡単だと思いますが、これについては私の本やオンラインにはほとんど記載されておらず、これを実装するために何をする必要があるのか わかりません。お世話になりました!