Как служба WCF с собственным размещением (WinForm) может взаимодействовать с основной формой?

Упрощенная версия того, чего я пытаюсь достичь:

I have a WinForms app that runs hidden (Visible = false) in the background. It's got only one Form, and I kept the default name - Form1 This WinForms app hosts a WCF Service. For now we'll call it the Listener service. This Listener service has a function called "DisplayAlert()" that's exposed as a service function An app sits on another machine sends a message to the Listener Service via a standard WCF service call

У меня все вышеперечисленное работает просто отлично. Я могу пройтись по коду и наблюдать за потоком сообщений при вызове функции DisplayAlert ().

Что я не могу понять, и я не могу поверить, что так сложно найти способ сделать что-то такое простое:

- I'd like the DisplayAlert() function in the hosted service interact directly with the WinForm that's hosting it to make the form visible.

Все, что я хочу сделать, это установить для Visibility значение true и вызвать другую функцию в WinForm.

Мне кажется, что это должно быть так же просто, как добавить ссылку на форму или сделать публичную функцию в форме и вызвать ее из класса обслуживания, но я даже не могу понять, как ссылаться на Form1 из службы учебный класс.

Я что-то упускаю из виду? Как мне даже сослаться на экземпляр Form1, на котором размещен сервис?

Я пошел по пути ....

Creating an event in the ListenerService (AlertReceived, virtual void OnAlertReceived), thinking that on the Form, I could add an event handler.
No dice. I'm not instantiating a ListenerService class directly, it's running in the ServiceHost. Trying to reference the Application object from within the class, thinking I could reference it as Application.Form1, but nope. I can't even see the Application object from within the service class. I'm probably missing something obvious here, but I'm not sure.

Любые другие предложения?

Я могу добавить код, если это поможет.

Ответы на вопрос(3)

Ваш ответ на вопрос