Как свернуть приложение Silverlight в системном трее - PullRequest
5 голосов
/ 31 июля 2011

Как мне minimize Silverlight Out Of Browser подать заявку на windows system tray? Возможно ли это?

Ответы [ 4 ]

3 голосов
/ 31 июля 2011

Мне нравится этот вопрос! Это указывает на еще одно очевидное требование: Microsoft не поддерживает приложения OOB. К сожалению, это не поддерживается напрямую как часть существующего Silverlight API. Но, сказав, что мы могли бы «изучить» достижение этого ... (приведенные ниже советы могут / не могут работать, поскольку я сам еще не тестировал их из-за отсутствия среды Visual Studio в настоящее время на моем компьютере!)

В приложении Silverlight OOB класс Application предоставляет метод «Install», который выполняется, когда мы выбираем установку приложения OOB.

В этом методе вы можете попытаться установить (с повышенными привилегиями) свой пользовательский элемент управления ActiveX (приложение Windows), скажем, MySilverlightHost. Это приложение представляет собой не что иное, как форму Windows с хостом silverlight.

Да! Вы меня правильно поняли. Этот парень (http://firstfloorsoftware.com/blog/hosting-silverlight-outside-the-browser/) реализовал пользовательский хост Silverlight на основе форм Windows.

Теперь, когда ваша OOB установлена, файл XAP, который развертывается в вашей системе, будет источником приложения ActiveX и будет содержать его содержимое в своем Silverlight Host Control. А поскольку это приложение для Windows, его можно настроить так, чтобы оно оставалось в системном трее.

Дайте мне знать, если это направит вас в правильном направлении.

1 голос
/ 31 июля 2011

Это невозможно.Для Silverlight нет доступных API для поддержки этого.

0 голосов
/ 20 июля 2013
Private Sub FullScr(sender As Object, e As MouseEventArgs)
    Application.Current.Host.Content.IsFullScreen = True
End Sub

Private Sub Nrml(sender As Object, e As MouseEventArgs)
    Application.Current.Host.Content.IsFullScreen = False
End Sub

Private Sub Min(sender As Object, e As MouseEventArgs)
    Application.Current.MainWindow.WindowState = WindowState.Minimized
End Sub
0 голосов
/ 22 августа 2012

Да, это возможно через Microsoft Native Extensions for Silverlight (NESL). ref: http://archive.msdn.microsoft.com/nesl

взято из этого URL: Текущая версия NESL обеспечивает доступ к функциям Windows 7, таким как датчики, портативные устройства, речь, панель задач и другие.

...