2011-12-09 8 views
5

L'evento Click forma un menu di scelta rapida L'elemento non viene sollevato quando il cursore si trova all'esterno del taskpane. Non ho idea di come farlo funzionare. 90% delle volte, il clic è all'esterno del riquadro attività.VSTO WPF ContextMenu.MenuItem Fare clic all'esterno di un TaskPane non sollevato

enter image description here

Quando viene openned menu di scelta rapida, i menu secondari sono spesso rappresentati al di fuori del riquadro attività (vedi foto sotto). In questi casi, l'evento click dal menu contestuale non viene generato.

Non ho assolutamente idea di come farlo funzionare.

Qualche idea?

+0

+1 un problema simile al mio: http://stackoverflow.com/questions/10526118/bug-cant-choose-dates-on-a-datepicker-that-fall-outside-a-floating-vsto-add -in –

risposta

3

Il riquadro attività personalizzato presenta problemi di messa a fuoco con i menu di scelta rapida WPF. Guarda here.

Ho gli stessi problemi. In realtà io uso uno dei metodi consigliati (Dispatcher Frame). Sta funzionando, ma non sono molto contento di questa soluzione goffa.

+1

Grazie. Nota che dovresti avere il riferimento CustomPane, sia wen dichiarato in xaml. Questa soluzione potrebbe bloccare la tua app se non correttamente implementata. E devo usare e.Source piuttosto che LogicalTreeHelper.GetParent ((DependencyObject) e.OriginalSource) ma non sono sicuro. – Avlin

+0

se ufficio app bloccato provare questo: \t Public Sub ContextMenuClick (ByVal sender As Object, ByVal e come RoutedEventArgs) \t Dispatcher.ExitAllFrames() fine sub – Avlin

+0

condizione +1 LogicalTreeHelper non ha funzionato neanche per me . Ho semplicemente commentato e funziona ora. Grazie @Dirk & Avlin – surfen