Domanda

Sto correndo in uno strano problema e mi sembra di essere cacciato alla seguente causa principale. Ambiente C# (.NET 2.0):

Il mio codice utilizza un framework di un fornitore e un tempo apre una finestra di dialogo modale. Sembra che il framework stia filtrando i tasti "immettere" dell'applicazione (probabilmente implementando iMessageFilter). Di conseguenza, la chiusura della mia finestra di dialogo premendo il pulsante "OK" porta a uno strano comportamento, la chiusura tramite il clic del mouse su "OK" funziona bene. La modifica del codice del framework non è purtroppo un'opzione. Quindi vorrei disabilitare che il framework nota "immettere" (e probabilmente "ESC") chiave nella mia finestra di dialogo. qualcuno sa come questo potrebbe essere fatto?

MODIFICARE:

Ho "risolto" il problema. Si prega di fare riferimento alla risposta accettata di seguito.

È stato utile?

Soluzione

Ho "risolto" il problema. Ecco la soluzione per il riferimento futuro: l'impostazione della proprietà FormBorderstyle del modulo (che è stato creato nella finestra di dialogo modale) su FormBorderstyle.FixedDialog ha risolto il problema. Sì, questo è un caso tipico di programmazione cargo-cult, ma dopo aver approfondito test la correzione funziona in modo affidabile.

Altri suggerimenti

Crea un file JavaScript che chiami sul tasto ENTER in fase di pressione, fai eseguire l'evento OK sul modale. Assicurati solo che il tuo JavaScript sia soprattutto l'altro JavaScript nell'Applicaiton e dovrebbe prima sparare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top