【发布时间】:2011-02-22 12:45:12
【问题描述】:
在 OnStateChange() 时出现“气球提示文本必须具有非空值”异常。当我的应用程序最小化时调用此方法。
void OnStateChanged(object sender, EventArgs args)
{
try
{
if (WindowState == WindowState.Minimized)
{
Hide();
if (TippuTrayNotify != null)
{
TippuTrayNotify.Visible = true;
TippuTrayNotify.ShowBalloonTip(2000);
}
}
else
m_storedWindowState = WindowState;
}catch(Exception ex){
SystemLog.WriteLine("(Error) OnStateChange : "+ex.Message+" ;");
}
}
我在 MainWindow 构造函数中初始化 TippuTrayNotify
public MainWindow()
{
InitializeComponent();
TippuTrayNotify = new System.Windows.Forms.NotifyIcon();
TippuTrayNotify.Icon = new System.Drawing.Icon("Icons/icon_64.ico");
TippuTrayNotify.BalloonTipTitle = "OlivInClass";
TippuTrayNotify.Text = "OlivInClass";
TippuTrayNotify.DoubleClick += new EventHandler(TippuTrayNotify_DoubleClick);
}
有什么解决办法
【问题讨论】:
-
你能在初始化
TippuTrayNotify时澄清一下吗?看起来这可能不会在 OnStateChange 之前调用。如果在调用 ShowBalloonTip 之前设置 TippuTextNotify.Text 会发生什么? -
我在 MainWindow.xml 的构造函数中初始化 TippuTrayNotify
-
请不要将标签放在标题中。我已经为你删除了 C# 标签。
标签: c# wpf notifications system-tray trayicon