重複の可能性:
2 つのフォームでのクラスのインスタンスの使用
私は OOP (特に Visual C#) にかなり慣れていないので、次のことを理解するのに問題があります。
Windows フォーム アプリケーションには、いくつかのフォームがあります。それらはすべてClient
、フォームの 1 つで作成されたオブジェクト (サーバーと通信するため) にアクセスできます。しかし、このオブジェクト インスタンスを他のフォームで使用できるようにするにはどうすればよいでしょうか。
重複の可能性:
2 つのフォームでのクラスのインスタンスの使用
私は OOP (特に Visual C#) にかなり慣れていないので、次のことを理解するのに問題があります。
Windows フォーム アプリケーションには、いくつかのフォームがあります。それらはすべてClient
、フォームの 1 つで作成されたオブジェクト (サーバーと通信するため) にアクセスできます。しかし、このオブジェクト インスタンスを他のフォームで使用できるようにするにはどうすればよいでしょうか。
フォームの親フォームで Client を静的に public にして、他のフォームからアクセスすることができます。同期的にアクセスする場合は、スレッドセーフにする必要があります。
Public は、すべてのフォームに対して単一のインスタンスを作成する場合、他のフォームで使用できるようにします。public static にする。
public static Client client.
クライアントが Form1 にあり、他のフォームからアクセスされていると仮定して、他のフォームからアクセスするには。
Client client1 = Form1.client;