J'ai une application WPF qui s'exécute dans la barre d'état système. J'essaie de créer un menu contextuel qui apparaît lorsque vous faites un clic droit sur l'icône dans le bac. Voici le XAML:Menu contextuel du clic droit dans la barre d'état système
<Window.Resources>
<ContextMenu x:Key="NotifierContextMenu" Placement="MousePoint">
<MenuItem Header="Exit" Click="Menu_Exit"/>
</ContextMenu>
</Window.Resources>
Et voici le code-behind:
void NotifyIcon_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
if (e.Button == System.Windows.Forms.MouseButtons.Right)
{
var menu = this.FindResource("NotifierContextMenu") as ContextMenu;
menu.IsOpen = true;
}
}
protected void Menu_Exit(object sender, RoutedEventArgs e)
{
NotifyIcon.Visible = false;
Application.Current.Shutdown();
}
La question que je vais avoir est que lorsque vous faites un clic droit sur l'icône, il renvoie une erreur NotifierContextMenu est introuvable. Qu'est-ce que je rate?
Oui, ils sont dans la même classe. Je cours le code de Parallel.Foreach dans cette application, quand je commente que cela fonctionne bien. Une idée de comment le faire fonctionner? – Justin
Une possibilité que le ForEach provoque des problèmes sur ce thread? Pouvez-vous essayer de créer un BackgroundWorker et mettre les éléments Parallel.ForEach dans celui-ci pour le déplacer sur un thread différent? Je n'ai jamais utilisé Parallel.ForEach, mais il est lié à un tas de choses de thread dans MSDN. Juste une pensée. – CodeWarrior
Qui l'a réparé, merci! – Justin