我正在构建一个显示服务器列表的服务器管理器应用程序。 每个服务器提供一些信息,这些信息被安排并分组到4个不同的窗口中。用户可以从服务器的上下文菜单打开任何窗口。 窗口由ViewManager类打开和管理,该类侦听不同的消息(通过。messenger)。 我使用服务器ip作为ServiceLocator中每个实例的密钥。 这样我就可以轻松管理相同类型的ViewModel实例。
我面临的问题是, 如何在运行时将密钥传递给GetInstance(),以便在初始化窗口时使用具有指定密钥的viewmodel?
目前我正在使用我在ViewModelLocator中声明的静态字符串变量(key)。我在实例化窗口之前用服务器的ip初始化它。
还有其他解决方案吗?