Не уверенный, что вы хотите, но смотрите на эти события для ContextMenu
и MenuItem
:
ContextMenu
:
http://msdn.microsoft.com/en-us/library/system.windows.controls.contextmenu_events.aspx
MenuItem
:
http://msdn.microsoft.com/en-us/library/system.windows.controls.menuitem_events.aspx
я думаю ContextMenuOpening
и , ContextMenuClosing
мог бы быть интересным;)
Целевой поток «прерван». В основном в этом потоке устанавливается флаг, на который поток может смотреть (с помощью Thread.interrupted ()
). Если целевой поток в данный момент заблокирован для некоторых операций ввода-вывода или Object.wait ()
, то он пробуждается, соответственно, с помощью -IOException
или -Eption
.
Прерывание потока - это мягкий способ подтолкнуть поток. Используется для того, чтобы дать ниткам шанс выйти из чисто , в отличие от Thread.stop ()
, что больше похоже на стрельбу ниткой из автомата.
Вот JDK 1.6 Javadoc :
Прерывает этот поток.
Если текущий поток не прерывает сам себя, что всегда разрешено, вызывается метод checkAccess этого потока, что может вызвать SecurityException быть брошенным .
Если этот поток заблокирован при вызове методов wait (), wait (long), или wait (long, int) класса Object , или методов join (), join (long), join (long, int), sleep (long) или sleep (long, int), этого class, то его состояние прерывания будет очищено, и он получит исключение InterruptedException.
Если этот поток заблокирован в операции ввода-вывода на прерываемом канале, то канал будет закрыт, состояние прерывания потока изменится. будет установлено, и поток получит исключение ClosedByInterruptException.
Если этот поток заблокирован в селекторе , тогда будет установлен статус прерывания потока , и он немедленно вернет из операции выбора , возможно с ненулевым значением , как если бы был вызван метод пробуждения селектора.
Если ни одно из предыдущих условий не выполнено, то будет установлен статус прерывания этого потока .
Прерывание неактивного потока не должно иметь никакого эффекта.
Документ Javadoc для этого метода объясняет, что происходит в какой ситуации.
ZeissS прав, сигнализация - самый чистый способ сделать это. вы также можете перехватить исключение прерывания и таким образом очистить его.