SignalRを使用して、アプリケーションインスタンス間で情報を交換する通知システムを実装しています。私は、次のハブのクラスを持っている:まだ別のクラスからUIコントロールを更新する
[HubName("OpenHub")]
public class OpenHub:Hub
{
public void DetermineLength(string message)
{
Clients.All.RecieveNewInfo(newMessage);
//How to use something like the following line?
//concerning that Form1 is loaded at application startup
//and I should not create a new instance
//Form1.lstMessages.Add(newMessage);
}
}
、私はラベルと到着したその新しいな情報をログに記録するリストボックスを含むいくつかのUIコントロールを更新する必要があります。フォームのコードに自分のクラスを定義するだけでなく、別のクラスでハブを定義したときに、これらの新しい情報を表示するためにFormオブジェクトを更新するにはどうすればよいですか?
私はこの1つを最初に試してみました。主な問題は、静的クラスで定義するのを手助けした別のクラスからフォームコントロールにアクセスすることでした。別の静的クラスに他のオブジェクトを定義しても、そのクラスにもアクセスできますか? – Medise
プログラムまたはフォームに静的メンバーを追加することができます。しかし静かに過ぎないように注意してください。賢明なクラス階層を構築する。そして、そのルートへのアクセスを取得します。 –