Как вызвать всплывающее сообщение в C #? - PullRequest
0 голосов
/ 05 марта 2011

Совсем недавно, когда у моей мамы был телефонный звонок, на ее телевизоре (Comcast) появилось удостоверение личности звонящего.Я видел подобную функциональность, когда McAfee выдает предупреждение о вирусе.Это было полупрозрачное всплывающее окно с логотипом компании, сообщением и одной или двумя кнопками.

Я хотел бы подражать этому поведению (через C #).Это будет событие управляемое.Мой опыт работы с C # довольно ограничен, поэтому я все еще разглядываю разные библиотеки.Есть какие-нибудь идеи, с чего мне начать?

Ответы [ 2 ]

2 голосов
/ 05 марта 2011

Я рекомендовал использовать WPF. Создайте новое окно, которое будет всплывать и установить следующие свойства:

WindowStyle="None"
AllowsTransparency="True"
Opacity="0.5" //50% transparent
Topmost="True"

Background свойство будет устанавливать цвет окна.

Поместите на окно любые элементы управления, что вам нужно. Создайте это окно и покажите, когда происходит какое-то событие:

YourWindow popup = new YourWindow(/*possible args for message on popup, for example*/);
popup.Show();

Чтобы разместить окно в правом нижнем углу, как и во всех всплывающих окнах, используйте следующий код в windows Loaded event:

this.Left = SystemParameters.WorkArea.Width - this.Width;
this.Top = SystemParameters.WorkArea.Height - this.Height;

Как сделать анимацию движения окна вы можете прочитать в других вопросах .

0 голосов
/ 05 марта 2011

Если ваше приложение работает в фоновом режиме, вы можете просто открыть окно и установить его на самый верхний уровень.

То, что вы будете делать дальше, будет зависеть от того, какой тип пользовательского интерфейса используется (WPF/ WinForms.) WPF упрощает создание прозрачной формы, как описано здесь:

http://blogs.interknowlogy.com/2007/06/20/transparent-windows-in-wpf-2/

Прозрачность в WinForms немного сложнее, но есть некоторые посты об этом:

Частичная прозрачность в C # .NET 3.5 WinForms?

Несколько вещей, которые вы захотите сделать с помощью всплывающего окна:

  1. Отключить кнопки сворачивания / увеличения / закрытия
  2. Отключить границы

Просто поместите их в форму, чтобы она выглядела лучше.

- Дан

...