Мне нужно уведомить лоток из другой формы.
ControlPanel.cs (форма по умолчанию, уведомление здесь):
...
public partial class ControlPanel : Form
{
public string TrayP
{
get { return ""; }
set { TrayPopup(value, "test");}
}
public void TrayPopup(string message, string title)
{
TrayIcon.BalloonTipText = message;
TrayIcon.BalloonTipTitle = title;
TrayIcon.ShowBalloonTip(1);
}
Form1.cs (другая форма):
...
public partial class Form1 : Form
{
public ControlPanel cp;
....
private void mouse_Up(object sender, MouseEventArgs e) {
cp.TrayP = "TRAY POPUP THIS";
}
В сети cp.TrayP = "TRAY POPUP THIS";
Я получаю исключение NullException.
Если я изменяю его на cp.TrayPopup("TRAY POPUT THIS", "test");
, исключение выдает что угодно.
Если я сделаю это:
private void mouse_Up(object sender, MouseEventArgs e) {
var CP = new ControlPanel();
CP.TrayPopup("TRAY POPUP THIS", "test");
}
, всплывающее окно в трее показывает, но оно создает второй значок в трее, а затем показывает подсказку с новым значком. Что я могу сделать?
П.С .: Извините за плохой английский.