C# 在NotifyIcon'处显示通知表单;s作为Dropbox的位置

C# 在NotifyIcon'处显示通知表单;s作为Dropbox的位置,c#,winforms,notifyicon,C#,Winforms,Notifyicon,我正在编写一个在C#中使用NotifyIcon的应用程序。我希望当用户单击系统托盘(屏幕右下角)上的NotifyIcon时,通知表单(这不是主表单,只是用于显示通知的次要表单)将显示在NotifyIcon的位置,就像Dropbox一样: 我使用了NotifyIcon的事件鼠标点击,并写了如下内容: private void NotifyIcon_MouseClick(object sender, MouseEventArgs e) { Form2 form = new Form2();

我正在编写一个在C#中使用NotifyIcon的应用程序。我希望当用户单击系统托盘(屏幕右下角)上的NotifyIcon时,通知表单(这不是主表单,只是用于显示通知的次要表单)将显示在NotifyIcon的位置,就像Dropbox一样:

我使用了NotifyIcon的事件鼠标点击,并写了如下内容:

private void NotifyIcon_MouseClick(object sender, MouseEventArgs e)
{
    Form2 form = new Form2();
    form.SetDesktopLocation(MousePosition.X - form.Width/2,MousePosition.Y-form.Height-20);
    form.Show();
    form.Focus();
 }
但它没有按预期工作,通知窗体显示在主窗体的位置,而不是NotifyIcon的位置


任何人都可以帮助我:|

进入
Form2
design,选择
Form2
的属性。在
Form2
的属性中查找
StartPosition
,将
StartPosition
设置为
手动
,也可以按

Form2 form = new Form2();
form.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
form.SetDesktopLocation(MousePosition.X - form.Width/2,MousePosition.Y-form.Height-20);
form.Show();
form.Focus();
希望这能解决你的问题