State sbattendo la testa contro questo per tutta la mattinata.WPF: disabilita ListBox, ma abilita lo scrolling
Fondamentalmente, ho una casella di riepilogo e desidero impedire alle persone di modificare la selezione durante un lungo processo in esecuzione, ma consentire loro di continuare a scorrere.
Soluzione:
Tutte le risposte sono state buone, sono andato con la deglutizione eventi del mouse dato che era la più semplice. Ho collegato PreviewMouseDown e PreviewMouseUp a un singolo evento, che ha verificato il mio backgroundWorker.IsBusy e, se è stato impostato, la proprietà IsHandled sull'argomento è vera.
Il problema di questo approccio è che la tastiera può ancora essere utilizzato per fare selezioni –
Quindi ingoiare gli eventi di pressione del tasto? – Michael
Sì, questa non è davvero una buona risposta, non lo farei. – Yusha