Domanda

Sto tentando di creare il mio controllo a discesa personalizzato in stile Completamento automatico in c # .net2.0. Per la velocità di sviluppo ho sviluppato il mio controllo come UserControl ma ho riscontrato un problema nel farlo in questo modo.

Quando viene disegnato il menu a discesa personalizzato, devo ridimensionare l'area UserControl per poter visualizzare l'elenco delle opzioni.

Idealmente, vorrei essere in grado di imitare il comportamento dell'elenco di drodpown in quanto l'elenco di opzioni è disegnato "fluttuante" e non è vincolato dall'altezza e dalla larghezza di UserControls (né dai limiti dei moduli padre). Una descrizione comandi è un altro esempio di "fluttuazione" senza limiti che desidero.

L'unico modo in cui riesco a pensare di raggiungere questo obiettivo è creare al volo un nuovo modulo senza bordo o barra del titolo e visualizzarlo quando è richiesto il popup.

Esiste un modo migliore (ma anche rapido) per farlo?

TIA

È stato utile?

Soluzione

Dovresti usare un Form o una finestra nativa per consentire al controllo di fluttuare correttamente. Per fare in modo che un modulo segua il controllo è abbastanza semplice ma è più difficile implementare e gestire tutti i problemi di messa a fuoco / occultamento, specialmente se hai bisogno di una tabbing / navigazione dei tasti senza soluzione di continuità.

Altri suggerimenti

Puoi provare a creare un controllo basato sul controllo del pulsante a discesa ToolStrip. Credo che questo controllo abbia la funzionalità che stai cercando. Ho trovato questo riferimento per la creazione di controlli basati su ToolStrip, potresti provare a iniziare con questo.

http://blogs.msdn.com/jfoscoding/attachment/1335869.ashx

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